To familiarise students with the main concepts underlying database management, and in particular with the relational database model which is the dominant database system used in corporate IT departments. The course has three main strands: (1) Fundamental concepts introduced using the entity-relationship model, (2) Querying a relational database, and (3) Relational database design.
- Entity-Relationship Model
- Relational Model
- Querying Relational Databases using SQL
- Updates, Views and Transactions
- Integrity Constraints in the Relational Model
- Relational Database Design
- Normal Forms
- Query Processing
- Non-Relational Databases
- SQL Programming and the Web
A first module in programming and a first module in analysis and design.
By 2-hour written examination and practical coursework, weighted 80% and 20% respectively.
- J.D. Ullman and J. Widom, A First Course in Database Systems. Third edition, Prentice Hall, 2008.
- A.B. Silberschatz, H.F. Korth and S. Sudarshan, Database System Concepts. Sixth edition, McGraw-Hill, 2011.
- T. Connolly and C. Begg, Database Systems: a practical approach to design, implementation and management. Fifth edition, Addison Wesley, 2010.