Module 06-21980 (2013)
Level 1/C I
|John Barnden||Semester 1||10 credits|
The module will explore some of the fundamentals of databases. Topics will include: relational theory, relational algebra, query languages, data design. The necessary mathematical background will be developed alongside its application in databases. Students will be introduced to an existing database system.
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
On successful completion of this module, the student should be able to:
1 Use SQL to create, modify and query databases
2 Analyse a real-world scenario and perform a conceptual database design for it
3 Take a conceptual data design model and translate it into the relational model 4 Use an existing database system
Cannot be taken with
- 06-02525 - Databases 2
2 hrs lectures/tutorials per week (plus 22 hours of assisted labs)
Contact Hours: 24
Sessional: 1.5hr examination (80%), continuous assessment (20%)
Supplementary (where allowed): 1.5 hour examination (100%)
- Tables and SQL: using the existing relational database implementation, simple select queries, nested queries, aggregate functions, grouping, table creation and modification, etc.
- Conceptual database design: entities and relationships, generalisation hierarchies, keys and weak entities, ER diagrams.
- Logical database design and relational theory: translating ER diagrams into tables, relational algebra, functional dependencies, normalisation, de-normalisation.
- Discrete-mathematical underpinning of database relations, relationships and relational algebra.