Undergraduate Course: Database Systems (INFR10055)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 10 (Year 3 Undergraduate)
||Availability||Available to all students
|Summary||***PLEASE NOTE: This course has been replaced by a 20 credit version - INFR10070 Database Systems, please see the entry for that course.***
Databases are essential to maintaining the information base in almost all modern business enterprises and to electronic commerce. They are also becoming increasingly important as a fundamental tool in much scientific research. Some knowledge of databases is now essential in any of these areas. The study of databases draws on several areas of computer science: logic, algorithms, programming languages and operating systems.
This course is an introduction to the principles underlying the design and implementation of databases and database management systems. It will cover the languages that have been developed for relational databases, their implementation and optimisation. It will also introduce some recent developments in databases including object-oriented, object-relational systems, semistructured data and the relationship between databases and XML. The bare essentials of transaction processing will also be covered.
* Relational Model and Relational Algebra
* SQL and SQL DDL
* Designing databases: E-R diagrams and functional dependencies
* Datalog, recursive queries and graph queries
* Comprehensions and OQL
* XML: types and languages for XML
* HTML and PHP programming
* Query optimization and indexing
* Implementation of relational operations
* Transaction processing, concurrency and serialization
Relevant QAA Computing Curriculum Sections: Databases
Entry Requirements (not applicable to Visiting Students)
||Other requirements|| This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser (lecturer).
Students are expected to have taken a basic course in logic and discrete mathematics.
Information for Visiting Students
|Pre-requisites||Visiting students are required to have comparable background to that assumed by the course prerequisites listed in the Degree Regulations & Programmes of Study.
If in doubt, consult the course organiser (lecturer).
|High Demand Course?
Course Delivery Information
|Not being delivered|
| 1 - Demonstrate knowledge of relational database schema design by employing the concepts of normal forms and entity-relationship diagrams.
2 - Demonstrate the ability to declare, define, and access relational database schemas in relational database management systems using the data definition language subset of SQL.
3 - Demonstrate knowledge of querying relational databases by using SQL and the ability to convert relational algebra queries to SQL.
4 - Demonstrate knowledge of query evaluation by describing and implementing database processing algorithms.
5 - Demonstrate the ability to programmatically map other data models to the relational one.
6 - Demonstrate knowledge of concurrency control by describing transactional semantics.
7 - Apply transactional semantics to reason about the correctness and consistency of database interaction among multiple users.
8 - Demonstrate knowledge of recent advances in database systems by identifying the connection between traditional relational databases and other data models and/or query languages.
9 - Demonstrate a basic knowledge of serial data expressed in XML.
10 - Demonstrate understanding and the ability to implement tools for structuring and querying XML.
|Raghu Ramakrishnan and Johannes Gehrke, Database Management Systems (Third Edition) McGraw-Hill 2000.|
|Course organiser||Dr Paolo Guagliardo
Tel: (0131 6)51 3835
|Course secretary||Mrs Victoria Swann
Tel: (0131 6)51 7607