Databases
Undergraduate · CS / Programming
Syllabus focus
Topics typically covered
Standard syllabus
Relational foundations
- Relational model: relations, tuples, keys, and constraints
- SQL DDL: CREATE TABLE, keys, foreign keys, CHECK
- SQL DML: SELECT, INSERT, UPDATE, DELETE
- Joins: inner, outer, cross; join algorithms (intro)
- Aggregation, GROUP BY, HAVING, and subqueries
Design and integrity
- Entity–relationship modeling and ER-to-relational mapping
- Functional dependencies and normalization (1NF–BCNF)
- Transactions: ACID properties and isolation levels (intro)
- Indexes: B-trees and query planning (intro)
- Views, triggers, and stored procedures (survey)
Systems internals survey
- Storage engines and page layouts (intro)
- Buffer pools and write-ahead logging intuition
- Concurrency control: locks vs MVCC (intro)
- Crash recovery and checkpoints (survey)
- Distributed databases and CAP tradeoffs (intro)
- Choosing indexes for realistic workloads
STEM / applied
Application integration
- Connecting applications to databases (ODBC/JDBC/ORM intro)
- Designing schemas for web and mobile backends
- Migration scripts and schema evolution
- Backup, restore, and replication basics
- NoSQL overview: document, key-value, column stores
Performance and analytics
- Query optimization and EXPLAIN plans
- Denormalization tradeoffs for read-heavy workloads
- ETL pipelines into a warehouse (intro)
- Connection pooling and transaction boundaries in apps
- Security: SQL injection prevention and least privilege
Product and data engineering
- Modeling multi-tenant schemas safely
- Online schema changes and zero-downtime migrations
- Caching layers and cache invalidation patterns
- Read replicas and eventual consistency effects on apps
- Observing slow queries in production
- Capstone: schema + API for a CRUD domain with constraints
Notes
SQL depth varies; some courses emphasize theory, others project-based web backends.