Let's now build a simple phone book application that allows the user to store names and phone numbers.
The main learning objective for this project relates to being able to use a relational database with Tkinter to store and manipulate records. We have already seen some basic examples of object persistence with serialization. Relational databases extend this persistence using rules of relational algebra to store data in tables.
Python provides database interfaces for a wide range of database engines. Some of the commonly used database engines include MySQL, SQLite, PostgreSQL, Oracle, Ingres, SAP DB, Informix, Sybase, Firebird, IBM DB2, Microsoft SQL Server, and Microsoft Access.
We will use SQLite to store data for our phone book application.
SQLite is a serverless, zero-configuration, self-contained SQL database engine suitable for developing...