Databases

Welcome! This course introduces relational databases through a combination of conceptual study, SQL practice, and a running web application project.


You will study data, database systems, and the relational model, and then continue into querying, application-side database access, schema design, migrations, aggregation, transactions, normalization, and performance.


The practical thread of the course uses PostgreSQL, FastAPI, Jinja, and raw SQL so that the database stays visible throughout the course.


The first iteration of these materials is now ready, but we already know a few things that could be improved. The materials will be updated, at the latest, when the course is run at Aalto for the next time.

Course Parts

We recommend starting from the first one, but you can also browse around.