CS 340 - Databases

Spring 2024

Administrivia

  • Instructor: Phillip Kirlin
  • Office hours: Mondays 10-11, Tuesdays 12:30-2, Wednesdays 11-12, Thursdays 2-3:30. Also available by appointment.
  • Canvas page: Use for grades and online assignment submissions.
  • Syllabus and additional policies.

Resources

Calendar

Wed, Jan 10
Introduction
Reading FCDS chapter 1
Mon, Jan 15
MLK Holiday
Wed, Jan 17
Snow day
Mon, Jan 22
Data models
Slides | Recording
Reading FCDS 2.1, 2.2
Wed, Jan 24
Relational algebra
Slides | Handout | Whiteboard | Recording
Reading FCDS 2.4
Mon, Jan 29
Relational algebra, continued
Project Milestone 1, due Wed, Feb 7
Wed, Jan 31
SQL
Database setup instructions
Homework Homework 1, due Mon, Feb 5
Reading FCDS 6.1
Mon, Feb 5
SQL II
Queries
Reading FCDS 6.2
Wed, Feb 7
SQL III (subqueries)
Queries
Reading FCDS 6.3
Mon, Feb 12
SQL IV (aggregation and grouping)
Queries
Homework Homework 2, due Mon, Feb 19
Reading FCDS 6.4
Wed, Feb 14
SQL create/update
Mon, Feb 19
E/R diagrams
Slides
Reading FCDS 4.1
Wed, Feb 21
E/R diagrams
(see above for slides)
Reading FCDS 4.1-4.3
Mon, Feb 26
E/R diagrams
(see above for slides)
Homework Homework 3, due Mon, Mar 4 at the beginning of class
Reading FCDS 4.4
Wed, Feb 28
E/R diagrams
(see above for slides)
Reading FCDS 4.5
Mon, Mar 4
Midterm review
Wed, Mar 6
Midterm
Mon, Mar 11
Spring break
Wed, Mar 13
Spring break
Mon, Mar 18
HTML lab
Lab
Wed, Mar 20
Interacting with a database through Python
Get replit code
Mon, Mar 25
Flask 1
Get replit code (finishing previous lab)
Get replit code (Flask lab)
Flask lab instructions
Wed, Mar 27
Flask 2
Get replit code (Flask lab)
Flask lab instructions
Mon, Apr 1
Functional dependencies
Slides
Wed, Apr 3
Functional dependencies
Slides
Mon, Apr 8
No class, go see the eclipse!
Wed, Apr 10
BCNF and normalization
Mon, Apr 15
Indices, B-trees
Wed, Apr 17
Query optimization
Mon, Apr 22
Transactions
Wed, Apr 24
Project presentations