Skip to main content Skip to navigation

CS258 Database Systems

Academic Aims

  • To show how the theory of relational algebra serves as a framework and a foundation for the efficient organisation and retrieval of large amounts of data.
  • To introduce students to some standard notations (for example, SQL) that implement important parts of relational algebra.
  • To give students practical experience of the use and limitations of some database notations (such as SQL) that are widely used in industry and business.

Learning Outcomes

On completion of the module the student will be able to:

  • Create appropriate efficient database designs for a range of simple applications.
  • Use notations such as SQL to implement a database design.
  • Translate between informal queries and their expression in more formal notations.
  • Construct appropriate queries in standard notations for a range of typical queries needed in common applications.
  • Identify and express relevant integrity constraints for a given database design.
  • Recognise the main security threats to databases, and identify appropriate control measures.

Content

  • Overview of databases and database management systems.
  • Concepts and language for relational theory (including values, variables, types, operators, propositions and predicates).
  • Relations and predicates; relational and logical operators.
  • Relational algebra.
  • Integrity constraints.
  • Database design issues (including functional dependency and normalisation).
  • SQL for table definition, selection and queries; constraints, joins and aggregation.
  • Overview of database security issues.

15 CATS (7.5 ECTS)
Term 1

Organiser:
Peter Triantafillou

Syllabus

Online material