CSC 222 - Database Systems

Course objectives

At the end of the course, the students will be familiar with the basic concepts of database and database management,  database design and its refinement and a moderate level of expertise in SQL. Students should be able to design the database schema for at least a small sized real life application and perform basic manipulation operations.

Course learning outcomes (CLOs)

CLO: 1. Explain fundamental database concepts. [C2 – Explain]

CLO: 2. Design conceptual, logical and physical database schemas using different data models. [C5 – Design]

CLO: 3. Identify functional dependencies and resolve database anomalies by normalizing database tables. [C2 – Identify]

CLO: 4. Use Structured Query Language (SQL) for database definition and manipulation in any DBMS [C4 – Use] 

Course Outline

Basic database concepts, Database approach vs. file based system, database architecture, three level schema architecture, data independence, relational data model, attributes, schemas, tuples, domains, relation instances, keys of relations, integrity constraints, relational algebra, selection, projection, Cartesian product, types of joins, normalization, functional dependencies, normal forms, entity relationship model, entity sets, attributes, relationship, entity-relationship diagrams, Structured Query Language (SQL), Joins and subqueries in SQL, Grouping and aggregation in SQL, concurrency control, database backup and recovery, indexes, NoSQL systems.

Lectures

Labs