Learning Outcomes

The aim of this module is to provide an introduction to data modelling and the design and implementation of relational databases.

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

1. Use examples to explain the basic terminology of, and perform the operation associated with, sets, relations and functions.
2. Prepare a relational schema from a conceptual model developed using the entity-relationship model.
3. Demonstrate queries in the relational algebra.
4. Employ the notion of normal forms in a relational database design.
5. Create a relational database schema in SQL that incorporates key, entity integrity, and referential integrity constraints.
6. Demonstrate data definition in SQL and retrieve information from a database using the SQL SELECT statement.
7. Use a relational database management system to build a database.

Outline Syllabus

Underlying principles
. types
. Basic, products and finite set
. operations on set
. relations
. The relational model of databases
. Function: surjections, injections

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

Relational Database Design
. functional dependency
. normal forms: 1NF, 2NF and 3NF

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