Python GUI Development and Fundamentals of MYSQL Databases
Track Software Development
Duration 30 hours
Skill Level Beginner
Language English

About this Course

Build interactive GUI applications and connect them with MySQL databases for data management.
Learning Mode: Learn at ALC or at Home

Detailed Course Curriculum

Hands-on module breakdown aligned with MKCL production standards and industry requirements.

  • Types of Errors
  • Exception
  • Exception Handling Hierarchy
  • Customized Exception Handling
  • Control Flow in Try and Except
  • Multiple Exceptions
  • Default Exception
  • Finally Block
  • Control Flow in try except and finally
  • Else with try except finally
  • Types of Exception
  • Assert Keyword
  • Python Loggers
  • What is log and log file in programming?
  • What is log and log file in programming?
  • Levels of log messages
  • Levels of log messages
  • Using basicConfig
  • Using basicConfig
  • Formatting
  • Formatting
  • Classes and functions
  • Classes and functions
  • Logging Handlers
  • Logging Handlers
  • Stream Handlers
  • Stream Handlers
  • File Handlers
  • File Handlers
  • Working with Handlers
  • Working with Handlers
  • Exception Information
  • Exception Information
  • JSON
  • Json
  • Json
  • JSON Syntax
  • JSON Syntax
  • Datatypes in JSON
  • Datatypes in JSON
  • Read, Write and Parse JSON
  • Read, Write and Parse JSON
  • Python Object Conversions
  • Python Object Conversions
  • Python to JSON
  • Python to JSON
  • Formatting the results
  • Formatting the results
  • Serializing
  • Serializing
  • Parse JSON
  • Parse JSON
  • Deserialize
  • Deserialize
  • Pickling & Unpickling
  • Pickling & Unpickling
  • What is Reg ex
  • Character Classes
  • Quantifiers
  • Functions of Re-Module
  • Find all methods - Important functions of re module
  • Symbols
  • Web scrapping using reg exp
  • Multitasking
  • Difference between Multiprocessing and multi-threading
  • Difference between Process and Thread
  • Ways of creating thread in python
  • Difference in program with and without Multithreading
  • Thread Identification Number
  • Functions/Methods in Multithreading
  • Daemon Thread
  • Synchornization
  • Difference between lock and semaphore
  • Thread Communication
  • Inter Thread Communicatio
  • Concurrency and parallelism
  • Race Condition and DeadLock
  • Collection Modules
  • Counters
  • Ordered dict
  • default dict
  • chain map
  • Named Map
  • DeQue
  • User Dict
  • UserList
  • User String
  • Object Oriented vs Procedural Oriented
  • What is Class?
  • What is Object ?
  • Constructor
  • Self Keyword
  • Functions vs Method
  • Types of Variables
  • Static variable
  • Local Variable
  • Instance Variable
  • Class Method
  • Static Method
  • Inner Class
  • Garbage Collection in OOP’s
  • Destructor
  • Inheritance
  • Inheritance
  • Inheritance
  • Built in function in oops
  • Built in function in oops
  • Single Inheritance
  • Single Inheritance
  • Constructor super()
  • Constructor super()
  • Multiple inheritance
  • Multiple inheritance
  • Method Resolution Order (MRO)
  • Method Resolution Order (MRO)
  • Multilevel Inheritance
  • Multilevel Inheritance
  • Hirarchical Inheritance
  • Hirarchical Inheritance
  • Hybrid Inheritance
  • Hybrid Inheritance
  • Polymorphism
  • Polymorphism
  • Polymorphism
  • Polymorphism with class methods
  • Polymorphism with class methods
  • Polymorphism with functions and objects
  • Polymorphism with functions and objects
  • Overloading
  • Overloading
  • Operator Overloading
  • Operator Overloading
  • Magic Method for operator overloading
  • Magic Method for operator overloading
  • Method Overloading
  • Method Overloading
  • Constructor Overloading
  • Constructor Overloading
  • Method Overriding
  • Method Overriding
  • Method overriding with multiple and multilevel inheritance
  • Method overriding with multiple and multilevel inheritance
  • Constructor Overriding
  • Constructor Overriding
  • Type System
  • Type System
  • Duck Typing
  • Duck Typing
  • Abstraction
  • Types of Methods in Python
  • How to declare an abstract method
  • Concrete Methods in Abstract Base Classes
  • Missed Abstract methods in implementation
  • Abstract classes contain more subclasses?
  • Different cases for Abstract class object creation
  • Built in Abstract Classes
  • Interfaces
  • Create a Python Interface
  • Python Interfaces vs Abstract Class
  • Encapsulation
  • Python Access Modifiers
  • Why we need Encapsulation
  • Calculator
  • Password Generator
  • Tic Tac Toe
  • Rock Paper Scissors
  • Chat Bot
  • BMI Calculator
  • Story Generator
  • Quiz Game
  • Create Acronyms
  • Intro
  • Introduction to Tkinter
  • Widgets in Tkinter
  • Tkinter Geometry
  • Python Tkinter Button
  • Python Tkinter Canvas
  • Python Tkinter CheckButton
  • Python Tkinter Entry
  • Python Tkinter Frame
  • Python Tkinter Label
  • Python Tkinter Listbox
  • Python Tkinter MenuButton
  • Python Tkinter Menu
  • Tkinter Project Calendar
  • Intro
  • Python Tkinter Message
  • Python Tkinter RadioButton
  • Python Tkinter Scale
  • Python Tkinter Scrollbar
  • Python Tkinter Text
  • Python Tkinter Toplevel
  • Python Tkinter SpinBox
  • Python Tkinter Paned Window
  • Python Tkinter Label Frame
  • Python Tkinter MessageBox
  • Python GUI PyQt5 - Part 1 intro
  • PyQt5 Introduction
  • Modules and tools
  • PyQt5 First Program
  • PyQt5 First Program
  • PyQt5 Layouts
  • QVBoxLayout and QHBoxLayout
  • QVBoxLayout and QHBoxLayout
  • QGridLayout
  • QGridLayout
  • QFormLayout
  • QFormLayout
  • QStackedLayout
  • QStackedLayout
  • Signals and slots
  • PyQt5 Widgets
  • QLabel
  • QLabel
  • QLineEdit
  • QLineEdit
  • QPushButton
  • QPushButton
  • QRadioButton
  • QRadioButton
  • QCheckBox
  • QCheckBox
  • QComboBox
  • QComboBox
  • QSpinBox
  • QSpinBox
  • QSlider
  • QSlider
  • QMenuBar, QMenu & QAction
  • QMenuBar, QMenu & QAction
  • QToolBar
  • QToolBar
  • QInputDialog
  • QInputDialog
  • QFontDialog
  • QFontDialog
  • QFileDialog
  • QFileDialog
  • QTab
  • QTab
  • QStacked
  • QStacked
  • QSplitter
  • QSplitter
  • QDock
  • QDock
  • QStatusBar
  • QStatusBar
  • QList
  • QList
  • QScrollBar
  • QScrollBar
  • QCalendar
  • QCalendar
  • Python GUI PyQt5 - Part 2 intro
  • QMessageBox
  • Multiple document interface
  • Drag and Drop
  • Drawing API
  • Clipboard
  • BrushStyle Constants - Part 1
  • BrushStyle Constants - Part 2
  • QPixmap Class
  • Database handling
  • Project 1 - Text Editor
  • Project 2 - Calculator
  • Python Turtle intro
  • Introduction to Python Turtle
  • Moving and Drawing with turtle I
  • Moving and Drawing with turtle II
  • First Turtle Program
  • Turtle program on pen control I
  • Turtle program on pen control II
  • Program - Event handling
  • Program on working state
  • Working with turtle screen 1
  • Working with turtle screen 2
  • Program - Colorful Star Pattern
  • Turtle Methods
  • Program - Draw a hut
  • Pygame intro
  • Pygame Introduction
  • Basic structure of a Pygame program
  • Basic Pygame concepts
  • Pygame - Display Modes
  • Pygame - Color Object
  • Pygame - Event Objects
  • Keyboard Events
  • Mouse Events
  • Pygame - Drawing Shapes
  • Pygame - Using Image
  • Pygame - Displaying Text
  • Pygame - Moving an Image
  • Pygame - Use Text as Buttons
  • Pygame - Transforming Images
  • Pygame - Sound Objects
  • Playing Music
  • Pygame - Load Cursor
  • Pygame - The Sprite Module
  • Snake Game
  • Basic SQL intro
  • Database and RDBMS
  • Introduction to SQL
  • SQL Subset
  • RDBMS concepts
  • Installing MySQL on Windows
  • Simple SQL queries
  • SQL Expression
  • SQL Operators
  • DDL Operations
  • DML Operations
  • Functions in SQL
  • Advanced SQL intro
  • SQL Subqueries
  • SQL Clause
  • SQL Joins
  • SQL Union
  • SQL Group by
  • SQL Views
  • SQL Indexes
  • SQL Transactions - Part 1
  • SQL Transactions - Part 2
  • SQL Transactions - Part 3
  • SQL Transactions - Part 4
  • SQL Transactions - Part 5
  • Python Programming with MySQL intro
  • MySQL Database
  • Install MySQL Driver
  • Check if Database Exists
  • Python MySQL Create Table
  • Check if Table Exists
  • Primary Key
  • Python MySQL Insert Into Table
  • Insert Multiple Rows
  • Python MySQL Select From
  • Selecting Columns
  • Python MySQL Where
  • Python MySQL Order By
  • Python MYSQL Delete From By
  • Python MySQL Drop Table
  • Python MySQL Update Table
  • Python MySQL Limit
  • Python MySQL Join
Eligibility Criteria
• Basic knowledge of computers and keen desire to build skills in this field.
• Open to students, job seekers, and working professionals.
Official Certification
• Official MKCL KLiC Certificate upon successful completion of the course and evaluations.
Work-Centric Learning Approach
• Step 1: Learners are given an overview of the course and its connection to life and work
• Step 2: Learners are exposed to the specific tool(s) used in the course through the various real-life applications of the tool(s).
• Step 3: Learners are acquainted with the careers and the hierarchy of roles they can perform at workplaces after attaining increasing levels of mastery over the tool(s).
• Step 4: Learners are acquainted with the architecture of the tool or tool map so as to appreciate various parts of the tool, their functions, utility and inter-relations.
• Step 5: Learners are exposed to simple application development methodology by using the tool at the beginner’s level.
• Step 6: Learners perform the differential skills related to the use of the tool to improve the given ready-made industry-standard outputs.
• Step 7: Learners are engaged in appreciation of real-life case studies developed by the experts.
• Step 8: Learners are encouraged to proceed from appreciation to imitation of the experts.
• Step 9: After the imitation experience, they are required to improve the expert’s outputs so that they proceed from mere imitation to emulation.
• Step 10: Emulation is taken a level further from working with differential skills towards the visualization and creation of a complete output according to the requirements provided. (Long Assignments)
• Step 11: Understanding the requirements, communicating one’s own thoughts and presenting are important skills required in facing an interview for securing a work order/job. For instilling these skills, learners are presented with various subject-specific technical as well as HR-oriented questions and encouraged to answer them.
• Step 12: Finally, they develop the integral skills involving optimal methods and best practices to produce useful outputs right from scratch, publish them in their ePortfolio and thereby proceed from emulation to self-expression, from self-expression to self-confidence and from self-confidence to self-reliance and self-esteem!

Ready to start Python GUI Development and Fundamentals of MYSQL Databases?

Join our upcoming batch at ZICA Kalyani center with certified instructors.