The following schedule of class lectures is subject to change. I will let you know about any changes as far in advance as possible. You are responsible for reading the appropriate chapter in the course textbook before each class. The reading assignment is indicated in the first column. For example, for the lectures on Principles of Database Systems (Classes 1-3) you should read Chapters 1 and 2 of the text. The lectures are ordered in such a way as to expose you to material you will need for the programming project (e.g. relational algebra, SQL) as early in the course as possible.
Classes will be taught online using zoom during normal class time and recorded for viewing offline. The zoom link will be posted on the course homepage and on Brightspace.
Class# Date Lecture# Topic ------ ---- -------- ----- 1 1/27 1 Principles of Database Systems 2 1/29 1 cont. 3 2/3 2 Relational Databases & Transaction Processing 4 2/5 2 cont. 5 2/10 3 The Relational Model & SQL DDL 6 2/12 3 cont. 7 2/17 3 cont. 8 2/19 4 Conceptual Design Using the ER Model 9 2/24 4 cont. 10 2/26 4 cont. 11 3/3 5 Relational Algebra & SQL 12 3/5 5 cont. 13 3/10 5 cont. 14 3/12 Midterm Exam 3/17 Spring Recess 3/19 Spring Recess 15 3/24 6 Schema Refinement and Normalization 16 3/26 6 cont. 17 3/31 6 cont. 18 4/2 6 cont. 19 4/7 8 Using SQL in an Application 20 4/9 8 cont. 21 4/14 9 File Organization and Indexing 22 4/16 9 cont. 23 4/21 10 Query Optimization: The Basics 24 4/23 10 cont. 25 4/28 11 Query Optimization 26 4/30 7 Triggers 27 5/5 NoSQL 28 5/7 Review for Final 5/19 Final Exam (5:30--8:00pm)