CSCC43: Introduction to Databases - Summer 2024

This course is about designing relational databases, building applications with database management systems (DBMSs), and understanding DBMS internals. Topics covered include entity relationship models, relational algebra, normalization theory, SQL, and implementation of relational databases. The course also includes a project where students design a realistic database following a design process, implement the design using SQL and an open-source DBMS, and evaluate the implementation with extensive testing.
Prerequisites: CSCB09 (or equivalent courses on computer science and systems foundations)
Textbook: Database Systems: The Complete Book (Second Edition)

Lectures: Monday 9:00 AM - 11:00 AM, online, Zoom link on Quercus
Discussions: Piazza

Tutorials: Office hours:

Tentative Schedule

Date Lecture Note
May 6 Overview, ER Diagrams First day of class
May 13 ER Diagrams, Relational Model, Functional Dependencies
May 20 No class (Victoria Day)
May 27 Functional Dependencies, Normalization Homework release
June 3 Relational Algebra
June 10 SQL
June 17 SQL Homework due (Quercus)
June 24 Constraints, Triggers, Views Project release
July 1 No class (Canada Day)
July 6 Midterm exam @ HLB101, 9:00 AM - 10:30 AM
July 8 Database Architectures
July 15 Advanced SQL Topics
July 22 Introduction to Transactions Last day to drop the course on July 24th
July 29 NoSQL Databases
August 3 Project demonstration, Zoom, 9:00 AM - 12:00 PM Project code/report due (Quercus)
TBD Final exam @ TBD, 9:00 AM - 12:00 PM



Students are expected to attend all the lectures and tutorials. The online lectures are supposed to be synchronous, and thus no recordings will be provided. We provide both in-person and online options for tutorials. Some materials covered in tutorials might not be taught in lectures but might be tested in the homework and/or the exams.

Late Policy

No late homework/project submissions are allowed. If you miss a submission deadline or an exam because of an emergency, fill out this form to request special consideration, and in case of a medical emergency, also email the instructor the UofT Student Medical Certificate, completed and signed by the doctor.
If the request is approved, the late homework or project can be submitted. The midterm exam, however, has no make-up test. If a missed midterm is approved, its mark is considered the same as the final exam mark.

Remarking Policy

If you believe there are mistakes in your homework/project/exam mark, fill out this form and email the submission or exam to the instructor to request remarking. The request should be made no later than one week from the date the mark is released.

Collaboration Policy

No collaboration of any form is allowed on the homework and exams, e.g., you may not copy a solution written by anyone else, or develop a solution together with another student/person. The project will be the group work of two students.
Any violation of these policies is considered cheating and will result in a zero grade for the homework/project/exam and will be referred to the Academic Integrity Office. More information about academic integrity can be found at Academic Integrity Matters.

Accessability Volunteering

AccessAbility Services requires Volunteer Note Takers
Register to become a note taker today --- Co-Curricular Record (CCR) approved position
1. Go to myAIMS for Note Takers
2. Follow the simple step-by-step process to register
3. Upload notes files into the AccessAbility Services myAIMS note taking portal
If you have questions please contact AccessAbility Services:
(416) 208-2662 or