DASC 5333 Database Systems for Data Science
CSCI 4333 Design of Database Systems
Spring 2025
Lecture Notes and Syllabus

by K. Yue

The syllabus is tentative. Actual contents and order of coverage may change. There will be eight homework assignments. Additional materials are topics that may be covered if time allows. Please read the notes before coming to the class.

Date
Topic
Lecture Notes and Comments
Week #1
(1/13-15): MW for CSCI 4333, T for DASC 5333
An Introduction and overview of database systems
Database basics
An introduction to the relational database model
The Toy University Database (toyu)
The Swim Database (Swim)
Read Ricardo Chapter 1
Introduction to the course
DB Basics
Read Ricardo Chapter 2, 4.2, 4.3, 4.4
The Relational Model
Read Ricardo Chapter 3
Toyu DB: toyu
Swim DB: swim
Week #2
(1/20-22)
1/20 Martin Luther King Day (holiday)
An introduction to simple SQL and MySQL

A First Look at SQL
Read Ricardo 4.1, 4.2, 5.1, 5.2, 5.4.1 and 5.4.2
Null Values

Week #3
(1/27-29)
An introduction to simple SQL and MySQL
Null Values in Relational Database
An introduction to conceptual data modeling

Introduction to DB Modeling.
Read Chapters 3 and 10.

Week #4
(2/3-5)
Data modeling using UML
Introduction to UML/DB Modeling
Read Chapter 10.
Week #5
(2/10-12)
Data modeling using UML
Mapping UML data models to relational schema
Mapping UML Class Diagrams to the relational model
Read Ricardo 4.5
Week #6
(2/17-19)
SQL

Read Ricardo 5.3 to 5.4
An introduction to SQL and MySQL
Read Ricardo 5.5-5/8, 9.1, 9.2
toyu Query Exercise (in PDF)
Suggested MySQL solution to even numbered questions of toyu exercises
Week #7
(2/24-26)
More SQL: prepared statements, views, stored subrountines, triggers, systems catalog.

More SQL

Week #8
(3/3-5)
Mid-term Exam, in person, class time (one hour 20 minutes):
  1. CSCI 4333.1: 3/5 Wednesday
  2. DASC 5333.1: 3/4 Tuesday (no lecture that day)
Mid-term examination will be conducted face to face. Closed book. However, you can bring an 'information' sheet: letter size, can be printed or written on both sides, which must be prepared by yourself.
Week #9
(3/10-12)
Introduction to Python
Embedded SQL Programming
Introduction to Python
Read Ricardo Chapter 6
MySQL programming in Python
Week #10
(3/17-19)
Happy Springbreak


Week #11
(3/24-26)
Embedded SQL Programming
Web DB development with Python

MySQL Python Web Development
Week #12
(3/31-4/2)
Introduction to Database Design
Normalization theory and normal forms

Introduction to Database Design
Introduction to Functional Dependency and Normal Forms
Read Ricardo Chapter 14
Week #13
(4/7-4/9)

Normalization theory and normal forms
Last day to withdraw: April 7 (Monday)

Theory of Functional Dependency
Normal Forms and Normalization Theory
Week #14
(4/14-4/16)
Transaction Management
Introduction to NoSQL database
NoSQL DB: MongoDB
Transaction management
Introduction to NoSQL database
Introduction to Mongo DB

Week #15
(4/21-4/23)
DB Security
Physical database
DB Security and SQL Injection
Physical database
Week #16
(4/28-4/30)
April 28: last class for CSCI 4333
Final Examination (in person)
  1. CSCI 4333.1: 4/30 Wednesday 1:00pm-3:00pm
  2. DASC 5333.1: 4/29 Tuesday 1:00pm-3:00pm
Final examination will be conducted face to face. Closed book. However, you can bring two 'information' sheets: letter size, can be printed or written on both sides, which must be prepared by yourself.

(*) Covered only if time permits. Not in the examinations.