Database Systems Design

Professors Maria Halkidi
Eleftheria Stougiannou
Course category Core
Course ID DS-504
Credits 5
Lecture hours 3 hours
Lab hours 2 hours
Digital resources View on Aristarchus (Open e-Class)

Learning Outcomes

The students upon the successful completion of the course will be able:

  • to analyze a database design problem and collect the requirements for implementing a database system.
  • to design a relational database at conceptual and logical level and create the appropriate data models
  • to design and implement well structured databases based on normalization rules.
  • to use the appropriate tools to design and implement a relational database
  • to formulate SQL queries for defining and managing databases

Course Contents

  • Introduction to Relational databases.
  • Entity-Relationship Model: Basic concepts, Entity Sets, Relationship Sets; Design Issues: Keys, E-R Diagram, Design of an E-R Database Schema, Reduction of an E-R schema to tables.
  • Relational model: Relations; Attributes; Relational schema; relational algebra (operations); relational calculus.
  • Database design: Normalization, Integrity constraints, functional dependencies, decomposition, normal forms
  • SQL: Basic structure, Set Operations, Aggregate Functions, Joins, Nested sub-queries, views, Modification of the Database (insert; update; delete), triggers.

Recommended Readings

  • Vassilacopoulos G. (2011): Information Systems (in Greek).
  • Ramakrishnan R. & Gehrke J. (2002): Database Management Systems, 3rd Edition, McGraw Hill.
  • Elmasri B.R. & Navathe S.B. (2007): Fundamentals of Database Systems, 5th Edition, Addison-Wesley.