Module Description
The module will provide an introduction to data modelling and the design and implementation of relational databases, exemplified using SQL. Students will prepare a relational schema from a conceptual model using the entity-relationship model. They will understand the notions of relation, key and normal forms in database design. Students will demonstrate data definition in SQL and retrieve information using SQL SELECT, leading to a relational database management system to build a database.

Learning Outcomes
After completing this module, students will be expected to be able to:

1. Prepare a relational schema from a conceptual model developed using the entity-relationship model.
2. Employ the notions of relation, key and normal forms in a relational database design.
3. Create a relational database schema in SQL that incorporates key, entity integrity, and referential integrity constraints.
4. Demonstrate data definition in SQL and retrieve information from a database using the SQL SELECT statement.
5. Use a relational database management system to build a database.

Outline Syllabus
Underlying principles
  • The relational model of databases

Fundamentals of Relational Database Systems
  • entity-relationship modelling
  • mapping conceptual schema to a relational model
  • relational algebra: operations developed for relational databases

Relational Database Design
  • functional dependency
  • normal forms and normalisation

Structured Query Language
  • data definition
  • keys
  • entity integrity constraints and referential integrity constraints
  • query formulation