Database management systems are a crucial part of most large-scale industry and open-source systems. This course will introduce you to important concepts of database systems and design. We will learn what relational databases are, what they are used for, the theory underlying their design, and how to query and modify a database using the declarative SQL language. At the end of the course, you will be able to: - Describe what relational databases are, and how they are used. - Master the Relational Database Model. - Demonstrate proficiency in formal relational database theory. - Demonstrate comprehensive SQL skills. - Apply database knowledge to practical problems. Software Requirements: Jupyter Notebooks, SQL