Manchester Est. 1824
 

Supporting Material for COMP67321: Databases

 
Official module description
 

Aims

In this module, the students will learn about the role of databases in organisations and gain practical experience of designing and implementing a database according to the relational model. The underpinnings of relational technology will be studied together with the analysis of its limitations which led to the development of Object Oriented and Object Relational approaches to databases. An understanding of current and likely future developments in database technology should also be gained.

 
 

Learning outcomes

A student completing this part of the course unit should:

  • understand the role, importance and impact of information management and be able to use data management techniques to address business issues
  • understand data modelling techniques, including ER modelling language
  • understand the principles of the relational data model and relational algebra
  • be familiar with database design and implementation, including development of database schemas (conceptual and logical)
  • learn SQL
  • learn basic principles of object-oriented and object-relational database management systems
  • understand database technology trends
  • be familiar with DBMS and DB design software
 
 

Syllabus

  • Introduction to databases and information management in organisations.
  • Database design using the ER model.
  • Relational model and mapping ER to relational; Normalisation.
  • Database manipulation, retrieval and programming; Structured Query Language (SQL).
  • Transaction processing, distribution, concurrency and recovery (overview)
  • Object and object-relational databases.
  • DBMS technology trends.

 
 

Reading list

  • (textbook) TM. Connolly, CE. Begg: Database systems: a practical approach to design, implementation, and management, 4th edition, Addison-Wesley, 2005, (ISBN 0-321-21025-5)
  • (textbook) R. Elmasri, S.B. Navathe: Fundamentals of Database Systems, 4th edition, Addison Wesley, 2004, (ISBN 0-321-20448-4)
  • A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5th edition, McGraw-Hill, 2005 (ISBN 0-07-295886-3)

 
 

Assessment

Assessment consists of 60% examination and 40% coursework.

The exam consists of 3 questions, selected out of 5 (each worth 20 marks). Calculators are not allowed.

The coursework is due in Week 11. You will need DIA and mySQL to complete the assignement.

 
 

Teaching materials and resources

  • Introduction to Database Technologies and Architectures
    • Handouts
  • Data modelling using the ER model
    • Handouts
    • Enhanced ER model - handouts
    • DIA
    • Toolkit for Conceptual Modeling (TCM)
    • Data modeling tools
    • Tutorial questions are available for EER modelling (distributed during the lectures).
  • Relational model
    • Handouts
    • MySQL and MySQL 5.0 Reference Manual
    • MySQL GUI tools
    • phpMyAdmin
    • MySQL Basics (a short and helpful MySQL tutorial)
    • Web Guide to SQL
    • MySQL Tutorial
    • Accessing mySQL from command line
    • DBDesigner
    • Tutorial questions are available for EER to relational mapping (distributed during the lectures).
  • Structured Query Language (SQL)
    • Handouts
    • W3 SQL Tutorial
    • SQL Zoo Interactive Tutorial
    • Learn SQL Tutorial
    • More examples
  • Normalisation in RDBMs
    • Handouts
  • Transactions and JDBC
    • Handouts
    • JDBC Developers Guide (Oracle)
      • Chapter 1: Overview (pdf)
      • Chapter 4: Basic Features (pdf)
    • Sun JDBC Tutorial
  • Introduction to Object Databases
    • Handouts
    • Brief Overview of OO concepts
    • Interfaces
    • The Object Oriented Database System Manifesto
    • Object Data Management Group: http://www.odmg.org
    • Object Database Management Systems, the Resouce Portal for Education and Research: http://www.odbms.org

  • Database technology trends
    • Handouts
    • A brief overview of XML databases - handouts
    • An Introduction to XML databases - handouts (2007/08)
    • Learn XML tutorial
    • Learn XML schema tutorial