Skip to content

CS 323 Database Systems

The course aims to introduce students to the understanding, concepts, design, implementation and use of database management systems (DBMSes) and databases (DBs). The DBMS part of the course involves understanding the approaches, techniques, models as well as the underlying database system architecture such as query planners, transaction, concurrency, security and recovery managers. Students will also learn models used at various levels – from conceptual to physical – including entity relationship (ER) diagrams, enhanced entity relationship (EER) diagrams, and unified modeling language (UML) diagrams. The various roles and users of database systems will also be explored. The course has a relational and SQL bias, but there will be some exploration of some noSQL databases (mongoDB, neo4j, etc).

To be competent with conceptual and logical database design To be able to setup and configure DBMS To be able to create and use database objects such as tables, indexes, constraints, etc To be able to work with data using logical query processing

Introduction to Databases  Database and Database Users Concept and Architecture Database Setup and Configuration Introduction and Conceptual Modelling Relational Model  Models and design of Databases  Entity Relationship Models  Enhanced Entity Relationship Models  Implementation of Databases  SQL Queries for implementation  SQL Queries for manipulation and retrieval  Normalization  Constraints Indexing  Logical Query Processing Concurrency Recovery  Further Topics Database Security Data Warehousing Non-Relational Databases (key-value, graph, document, and OO)

Database Setup and Configuration Models and design of Databases  Entity Relationship Models  Enhanced Entity Relationship Models  Implementation of Databases  SQL Queries for implementation  SQL Queries for manipulation and retrieval  Normalization  Constraints Indexing Logical Query Processing Filtering and Sorting Data Non-Relational Databases (key-value, graph, document, and OO)