Advanced Python: Working with Databases
2h 9mAdvanced2023-05-11
Authors

Kathryn Hodge
Software Developer
Course details
To create functional and useful Python applications, you need a database. Databases allow you to store data from user sessions, track inventory, make recommendations, and more. However, Python is compatible with many options: SQLite, MySQL, and PostgreSQL, among others. Selecting the right database is a skill that advanced developers are expected to master. This course provides an excellent primer, comparing the different types of databases that can be connected through the Python Database API. Instructor Kathryn Hodge teaches the differences between SQLite, MySQL, and PostgreSQL and shows how to use the ORM tool SQLAlchemy to query a database. The final chapters put your knowledge to practical use in two hands-on projects: developing a full-stack application with Python, PostgreSQL, and Flask and creating a data analysis app with pandas and Jupyter Notebook. By the end, you should feel comfortable creating and using databases and be able to decide which Python database is right for you.
Skills covered
AdvancedDatabase DevelopmentPythonDatabase ManagementProgramming LanguagesOpen SourceSoftware Development
Concepts
0. Introduction
- 01 - Using databases to level up your Python applications
1. Introduction to Databases in Python
- 02 - What is a database
- 03 - Relational databases
- 04 - Non-relational databases
- 05 - Python Database API
2. Using SQLite in Python
- 06 - What is SQLite
- 07 - Creating an SQLite database
- 08 - Inserting your first record into an SQLite database
- 09 - Adding multiple records at a time to an SQLite database
- 10 - Filtering records in an SQLite database
- 11 - What is SQLAlchemy
- 12 - Setting up a virtual environment for SQLAlchemy
- 13 - Executing a SQL query with SQLAlchemy
- 14 - Using the SQL expression language to write maintainable code
- 15 - Challenge - Create an SQLite database
- 16 - Solution - Create an SQLite database
3. Using MySQL in Python
- 17 - What is MySQL
- 18 - Creating a MySQL database
- 19 - Building tables in a MySQL database
- 20 - Adding data to a MySQL database
- 21 - Connecting a Python application to a MySQL database
- 22 - Encapsulating database operations
- 23 - Setting up MySQL in Python using SQLAlchemy
- 24 - Building a model with SQLAlchemy ORM
- 25 - Adding up a foreign key with SQLAlchemy ORM
- 26 - Using SQLAlchemy Sessions to transact on a MySQL database
- 27 - Retrieving data using SQLAlchemy ORM
- 28 - Challenge - Create a MySQL database
- 29 - Solution - Create a MySQL database
4. Using PostgreSQL in Python
- 30 - What is PostgreSQL
- 31 - Creating a PostgreSQL database
- 32 - Creating a table in Postgres using Python
- 33 - Inserting data into a Postgres database
- 34 - Interacting with a Postgres database using Python
- 35 - Setting up SQLAlchemy Core to connect to a Postgres database
- 36 - Manipulating with Postgres data using SQLAlchemy Core
- 37 - Setting up SQLAlchemy ORM to connect to a Postgres database
- 38 - Manipulating with Postgres data using SQLAlchemy ORM
- 39 - Challenge - Create a Postgres database
- 40 - Solution - Create a Postgres database
Conclusion
- 41 - Continue using databases in Python applications
Related courses
- Advanced Tableau for Climate Professionals
- Advanced Geospatial Data Analytics in Python
- Advanced Scripting for Testers: Local Data, Spreadsheets, and Reporting
- Secure Coding in C++
- Creating Angular Libraries
- Unlocking Angular: Performance Optimization
- Advanced Windows 11 for Local Administrators
- Building Scalable Microservices with TypeScript and Node.js