Introduction to Database Systems

V22.0444-001
Thurs 6:20 p.m. - 9:00 p.m.
Room: Cantor 102

Instructor: David Tanzer (tanzer@cs.nyu.edu)
Office hours: Thurs 1:00 to 2:00 pm, WWH 419

Objectives

The course covers the concepts of database systems with a special emphasis on relational database systems and SQL. Topics covered will include:

* The architecture of a database system.
* Logical design of relational databases, including normalization.
* Data definition and data manipulation using SQL.
* Physical design, including storage management and access techniques.
* Concurrency control and recovery
* Selected advanced issues.

Course Work

Homework assignments, mid-term examination, final examination.

Textbook

Jeffrey Ullman and Jennifer Widom : A First Course in Database Systems
Prentice Hall, 1997
ISBN 0-13-861337-0

Class list

All students should register themselves with the class list, which is used for all technical discussions concerning the course. Please send all your questions to this list (not to the instructor) so that everyone can participate. To register, send mail to: v22_0444_001_fl00-request@cs.nyu.edu with the word "subscribe" in the subject or body. (The character after 'f' is 'l', not the numeral 1.) To post to the list, send mail to:
v22_0444_001_fl00@cs.nyu.edu. You can also subscribe and access the list through the following web page:
cs.nyu.edu/mailman/listinfo/v22_0444_001_fl00

The list can be used for discussion of any course-related topics, with the obvious exception that it should not be used as a medium for solving the homework problems. Example of a good question for the mailing list: does it ever make sense to have relationships between relationships? When in doubt, send mail to me instead of the list.

Click here for the archives to the class mailing list.

Computer Accounts

Later on in the course, we will be using the mySQL database system, to practice SQL. This is a free SQL server, which is available on many platforms, including Linux, Solaris and Windows. In addition, I have heard that the Redhat Linux distribution comes with mySQL preinstalled, but this should be verified.

All students enrolled in the course have unix accounts on acf5.nyu.edu. Your username is your netID (found on the front of your ID card). Your password is the first 5 (five) digits of your 9-digit NYU ID numbers (usually the social security number). For students who have had acf5 accounts in the past your old password is still active. Later on, I will post information about how to use mysql on these unix accounts.

Lecture Notes

The notes are available both as postscript files, and as pdf files.
For some notes on viewing postscript files, click here .

unit0.ps , unit0.pdf General Introduction and Preview of Various Topics
unit1.ps , unit1.pdf The Entity-Relationship Model and its Relational Implementation
unit1b.ps , unit1b.pdf Addendum to Unit 1: Handling Weak Entity Sets
unit2.ps , unit2.pdf Relational Algebra as a Query Language
unit2b.ps , unit2b.pdf Addendum to Unit 2
unit3.ps , unit3.pdf SQL -- Basic Queries
unit4.ps , unit4.pdf SQL -- More DML Features
unit5a.ps , unit5a.pdf SQL -- Data Definition (part 1)
unit5b.ps , unit5b.pdf SQL -- Data Definition (last 4 slides)
unit6a.ps , unit6a.pdf Relational Design Theory (part 1)
unit6b.ps , unit6b.pdf Example-Based Approach to Relational Design Theory
unit6c.ps , unit6c.pdf Example-Based Approach (final part)
unit7a.ps , unit7a.pdf Transaction-Processing -- Part 1
unit7b.ps , unit7b.pdf Transaction-Processing -- Concurrency Control

Homework

Homework is expected to be handed in on time. Up to one week late, it will be accepted with a 15% penalty.

Reading assignment:
Chapter 1: All
Chapter 2: All
Chapter 3: Sections 3.1, 3.3
Chapter 4: Section 4.1
Chapter 5: Up to and including Section 5.9.1
Chapter 7: Section 7.1

New: Chapter 3, sections 3.5, 3.6, 3.7

Everything about relational systems is relevant to the course. You may skim the discussion of ODL.

Homework 1: ER diagrams and their translation to relational designs. Due: September 28.

Homework 2: Queries in relational algebra and SQL. Due: October 12.
Solutions: sol2.ps , sol2.pdf

Homework 3: hw3.pdf Functional Dependencies and BCNF. Due: November 16. (Note: there is a typo, disregard the fact that it says "Homework 5")

Solutions: sol3.ps , sol3.pdf

Resubmission of Howework 2: Due November 30.

Homework 4: hw4.pdf Functional Dependencies and 3NF. Due: December 7. (Note: there is a typo, disregard the fact that it says "Homework 6")
Solutions: sol4.ps , sol4.pdf

Midterm

Date: October 26. The topics covered in the midterm will be close to the topics covered in the homework --- so your best bet is to do a good job on the homeworks.

Final

Date: Thursday, Dec. 21st, from 8-9:50 p.m., Cantor 102

Make-up Class

To compensate for the Thursday class that we will miss because of Thanksgiving, a make-up class will be given on Weds Dec. 13th, at the usual time an place.