CMSC 424 Section 0102 Spring 2001


The goal of this course is to introduce students to database systems and motivate the database approach as a mechanism for modeling the real world. The course will cover in depth the relational model, physical and logical database design, query languages and other database services including concurrency control, crash recovery, database integrity and security. Distributed databases and transaction management will also be discussed.

Class meets TuTh.  3:30pm- 4:45pm CLB 0111


Professor: Joel Saltz Email:
Office hours: TuTh 1:15-2:15 or by appointment.
Office AVW 4155, Tel. 405-2669 or 410-614-6092

TA:  Haixia Zhao Email:
Office hours: TBA,  TA office AVW 1152.


TA Corner – Information on Class Project and Assignments


Description of Term Project


Information on Cluster and Oracle 8 Access  


Sample Midterm Exam





·       Required text: Silberschatz, Korth and Sudarshan "Database System Concepts," Third Edition, McGraw Hill 1997.

·       Recommended text: Rajashekar Sunderraman, “ Oracle8 Programming: A Primer, “ Addison-Wesley, 2000.


Reading Assignments from Silberschatz, Korth and Sudarshan

·        Chapter 1: Introduction

·        Chapter 2: Entity-Relationship Model

·        Chapter 3: Relational Model

·        Chapter 4: SQL

·        Chapter 6: Integrity Constraints

·        Chapter 7: Relational Database Design
 Sections 7.1 - 7.3 (Normalization Using Functional Dependencies)

·        Chapter 10: Storage and File Structure
 Section  10.1-10.8, 10.10

·        Chapter 11: Indexing and Hashing

·        Chapter 12: Query Processing

·        Chapter 13: Transactions

·        Chapter 14: Concurrency Control
Section 14.1

·        Chapter 15: Recovery System
Section 15.4


Some of the slides used in class:


From Silberschatz, Korth and Sudarshan:

From Riccardi:




A student's grading will be determined from 3 or 4 homeworks (15%), a midterm (25%), a final exam (30%) and a project (30%). The project requires analysis, design, development, implementation, and documentation in three phases. Phase I: Requirement Analysis and System Analysis; Phase II: Schema and Application Program design; and Phase III: Implementation followed by a demo.

·  Make-up policy: No make-up exam will be given except for medical and emergency reasons.

·  Delayed work: No delayed work will be accepted, unless accompanied by a doctor's note.

Re-grade policy.  All requests to change grading of homework, programming projects, or exams must be submitted in writing (typed) within one week of when the assignment was made available for pickup. Requests must be specific and explain why you feel your answer deserves additional credit. A request to re-grade an assignment can result in the entire assignment being re-evaluated and as a result the score of any part of the assignment may be increased or lowered as appropriate.


Academic Integrity:

All work that you submit in this course must be your own; unauthorized group efforts will be considered academic dishonesty. See the Undergraduate Catalog for definitions and sanctions. Academic dishonesty is a serious offense that may result in suspension or expulsion from the University. In addition to any other action taken, the grade “XF” denoting “failure due to academic dishonesty” will normally be recorded on the transcripts of students found responsible for acts of academic dishonesty. Sharing of code on programming assignments is a form of academic dishonesty.