20277 Database Systems

Credits: 3 intermediate credits in Computer Science or in Software Engineering

Prerequisites: none

Required: Introduction to Computer Science Using Java,1 Discrete Mathematics: Set Theory, Combinatorics and Graph Theory2 (or Mathematics for Students of Social Sciences: Set Theory, Logic and Linear Algebra)

Recommended: Data Structures and Introduction to Algorithms (or Data Structures)

The course is based on Database System Concepts (6th ed.), by A. Silberschatz, H.F. Korth, and S. Sudarshan (McGraw-Hill, 2011).

Objectives: To present basic concepts related to database systems, with an emphasis on data representation and languages: the relational model; theoretical and commercial query languages for the relational model; database design using the entity-relationship model and database implementation.

Topics: Introduction to database systems; The relational model: SQL, relational algebra, relational calculus; The entity-relationship model; Database design; Indexing and hashing; Query processing.


1or both Introduction to Computer Science Using Java I (20453) and Introduction to Computer Science Using Java II (20454), or Fundamentals of Programming with Java (20478) for students not studying toward a degree in Computer Science.

2or Discrete Mathematics: Set Theory, Combinatorics and Logic (20283), which is no longer offered.