School of Computer Science

Module 06-21923 (2012)

Fundamentals: Databases

Level 4/M C

John Barnden Semester 2 10 credits
Co-ordinator: John Barnden
Reviewer: Alan Sexton

The Module Description is a strict subset of this Syllabus Page.

Aims

The aims of this module are to:

  • Introduce the fundamentals of database theory
  • Introduce the core of the SQL query language
  • Enable students to design a database

Learning Outcomes

On successful completion of this module, the student should be able to:

  • Use SQL to create, modify and query databases
  • Analyse a real-world scenario and perform a conceptual database design for it
  • Take a conceptual data design model and translate it into the relational model
  • Use an existing database system
  • Apply relational algebra and the mathematical theory of relations to describe databases, queries, and consistency conditions

Teaching methods

2 hrs lectures/tutorials per week (plus 22 hours of assisted labs)


Assessment

  • Sessional: 1.5hr examination (80%), continuous assessment (20%)
  • Supplementary: 1.5 hour examination (100%)

Detailed Syllabus

  1. Tables and SQL: using the existing relational database implementation, simple select queries, nested queries, aggregate functions, grouping, table creation and modification, etc.
  2. Conceptual database design: entities and relationships, generalisation hierarchies, keys and weak entities, ER diagrams.
  3. Logical database design and relational theory: translating ER diagrams into tables, relational algebra, functional dependencies, normalisation, de-normalisation.
  4. Discrete-mathematical underpinning of database relations, relationships and relational algebra.

Programmes containing this module