CISC 437/637  -   Database Systems  -   Fall 2009

TuTh 5:00 pm-6:15 pm, 219 Smith Hall


Instructor: Daniel Chester  TA: Dongqing Zhu 
Office: 101G Smith Hall  Office: 103 Smith Hall 
Hours: M/F 3:15 pm-4:15 pm and by appt.  Hours: Tu 10:00 am-11:30 am, Th 3:30 pm-5:00 pm 
Phone: 831-1955  Phone: 831-3132 
Email: User: chester Domain: cis.udel.edu Email: User: zhudq Domain: udel.edu

Textbook

DATABASE SYSTEMS The Complete Book, second edition, by Garcia-Molina, Ullman and Widom. Pearson Prentice Hall, 2009. CAUTION: The international edition of this textbook is not the same as the one sold in the US. The exercises are different.

Course Description

Physical and logical organization of databases. Data retrieval languages, relational database languages, security and integrity, concurrency, distributed databases.

Course Objectives

In this course, the student will learn how to create and manipulate a database system using MySQL. He or she will also learn how to design a database using the E-R model and will design and implement a complete database system. He or she will understand basic implementation techniques that make databases systems more efficient and some important issues that must be addressed when more than one user uses a database system at the same time or when the database system is distributed over several locations.

Topics (tentative)

Grading

Ninety-five percent of the grade will be based on (with equal weight) [tentative]:

plus five percent for doing the online course evaluation http://www.udel.edu/course-evals/ at the end of the semester.

The numerical scores will be combined, not the letter grades. Since the assignments and exams are not standardized, your course grade will depend not only on the weighted score you receive, but also on how your score compares with the score distribution for the whole class.

NOTE: Roll will be taken from time to time without warning. If you are absent a substantial number of times when these rolls are taken, your grade for the course could be lowered by as much as one letter grade. No make-ups allowed.

Policies


Getting Started in MySQL

Some Limitations of MySQL

C API example(SELECT) Works in C++ too. Must be compiled and run on orioles.
C API example(INSERT) Works in C++ too. Must be compiled and run on orioles.
JDBC example

Slides

Relations
Relational Algebra
SQL
Normal Forms
E/R Diagrams
Art Gallery example
Constraints and triggers
Trigger demo
File to source for removing trigger demo
Views and Indexes

Review of topics covered before midterm

SQL and C (and Java)
Granting privileges
Indexing
RA operator algorithms
Query compilation

Assignments

Assignment 1 (relational algebra)
Assignment 2 (SQL)
Assignment 3 (BCNF)
PROJECT: PART 1
Assignment 4 (3NF, E/R diagrams)
PROJECT: PART 2
Assignment 5 (triggers and views)
Assignment 6 (Indexing, B+ trees, Hash tables)
PROJECT: PART 3
Assignment 7 (Iterators for intersection)


November 18, 2009