Course Material

The fundamentals of database design and application development using databases: entity-relationship modeling, logical design of relational databases, relational data definition and manipulation languages, SQL, XML, query processing, physical database tuning, transaction processing, security. Programming projects are required.

This is a first course on databases, focusing on how to use a database management system and design a database effectively. No prior exposure to database systems is assumed. This course is a prerequisite for the more advanced courses 4112 and 6111. The course will focus on relational databases, but will also touch on object-relational databases.

There is one required text, ``Database Management Systems'' by Raghu Ramakrishnan and Johannes Gehrke (third edition, published by WCB/McGraw-Hill), which should be available at Bookculture on 112th street. Note that there is a version of the textbook available for the Kindle that is significantly cheaper than the physical book.

The course will cover material mainly from chapters 1-5, 8, 12, 16, 19-21. 23. Some material from other chapters may also be covered (and will be announced in class.) Copies of the textbook have been placed on reserve in the Engineering Library.

Additional material related to the textbook (including solutions to some of the exercises) can be found here.

There are two sections of 4111 offered in fall 2014 with different instructors. The two sections will share some material and infrastructure for the project. However, the lectures, homeworks and exams will be largely independent.

Ken Ross 2014-09-12