Stanford CS145: Introduction to Databases
Jennifer Widom's database course covering the relational model, SQL, and database design principles.
About This Course
Stanford CS145 (originally offered as the Stanford "Introduction to Databases" MOOC) covers the foundations of database systems. Jennifer Widom's teaching is clear and methodical, making this an excellent first database course.
The course focuses on the relational model and SQL, with additional coverage of semi-structured data (XML, JSON), NoSQL systems, and database design theory.
What You Will Learn
- The Relational Model: Tables, keys, schemas, relational algebra
- SQL: Queries, subqueries, aggregation, joins, views, modifications
- Database Design: Entity-relationship model, functional dependencies, normalization
- Constraints and Triggers: Integrity constraints, referential integrity, triggers
- Indexes and Transactions: B-tree indexes, ACID properties, isolation levels
- Semi-Structured Data: XML, XPath, XQuery, JSON
- Authorization: Access control and database security
Prerequisites
Basic programming experience. No prior database knowledge required.
External Links
Course content belongs to Stanford University.