Section outline

  • This course provides a comprehensive introduction to database systems and data management concepts. It covers data models, database design and implementation, query languages (particularly SQL), transaction management, concurrency control, security, and emerging database technologies such as NoSQL and object-oriented databases. Emphasis is placed on practical skills in designing, creating, querying, securing, and managing databases, preparing students for real-world data handling and information management tasks.


    • Course Objectives

      The course aims to:

      1.     Introduce students to fundamental concepts and architectures of database systems.

      2.     Equip students with the ability to design and normalize relational database schemas.

      3.     Provide hands-on experience in implementing databases using SQL.

      4.     Develop skills in database transaction management, security, and recovery.

      5.     Introduce emerging topics in database systems such as NoSQL and XML.

    • Teaching and Learning Methods to be Employed

      1.    Introductory illustrated lecture

      2.    Interactive discussion: Where do we encounter databases in Nigeria daily?

      3.    Demonstration: Opening a sample database in MySQL Workbench

      4.    Think-Pair-Share: Differences between a file system and a database

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Define data, information, and knowledge and explain their relationship.

      2.    Explain the concept of information management and its importance.

      3.    Distinguish between a file-based system and a database system.

      4.    Define a database and a Database Management System (DBMS).

      5.    List the key advantages of the database approach over file-based systems.

    • Course Discussion Forum
      Due: Thursday, 4 June 2026, 6:26 PM
      Not available unless: The activity Course Outline is marked complete
    • Assignment One
      Opened: Thursday, 4 June 2026, 12:00 AM
      Due: Thursday, 18 June 2026, 12:00 AM
      Not available unless: The activity Course Outline is marked complete
    • Teaching and Learning Methods to be Employed

      1.      Illustrated lecture on DBMS architecture with layered diagrams

      2.      Lab session: Navigating MySQL Workbench schemas, tables, users

      3.      Demonstration: Data independence in practice

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.      Identify and describe the components of a database system.

      2.      Explain the functions of a DBMS.

      3.      Describe the three-schema (ANSI/SPARC) architecture.

      4.      Distinguish between physical and logical data independence.

      5.      Explain the roles of DBA, database designer, and end-users.

    • Course Discussion Forum
      Due: Thursday, 11 June 2026, 6:22 PM
      Not available unless: The activity Course Outline is marked complete
    • Teaching and Learning Methods to be Employed

          i.         Illustrated lecture with step-by-step ER diagram construction

        ii.         Hands-on ER diagram drawing exercise (paper or draw.io)

      iii.         Case study: Modelling a Nigerian hospital information system

       iv.         Collection of Assignment 1

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Explain the purpose of conceptual data modelling.

      2.    Define entities, attributes, and relationships in the ER model.

      3.    Classify attributes by type (simple, composite, multi-valued, derived).

      4.    Identify and specify cardinality ratios and participation constraints.

      5.    Draw a complete Entity-Relationship (ER) diagram for a given scenario.

    • Assignment 2
      Opens: Thursday, 18 June 2026, 12:00 AM
      Due: Thursday, 2 July 2026, 12:00 AM
      Not available unless: The activity Course Outline is marked complete
    • Due: Thursday, 18 June 2026, 6:52 PM
    • Teaching and Learning Methods to be Employed

          i.         Lecture with relational model concepts and worked examples

        ii.         ER-to-relational mapping exercise

      iii.         Lab: Creating tables with constraints in MySQL

       iv.         Quiz on entity and referential integrity

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Describe the relational data model using formal terminology.

      2.    Convert an ER diagram into a relational schema.

      3.    Define and distinguish between different types of keys.

      4.    Explain and implement entity integrity and referential integrity constraints.

      5.    Write SQL DDL statements to create tables with constraints.

    • SQL Lab Exercise 1 Page
      Not available unless: The activity Course Outline is marked complete
    • Due: Thursday, 25 June 2026, 7:05 PM
    • Teaching and Learning Methods to be Employed

      1.    Interactive lecture with live SQL demonstrations in MySQL

      2.    Hands-on SQL lab session — students write and execute queries

      3.    Pair programming: SQL query challenges

      4.    Real dataset exercise using Nigerian banking/demographic sample data

       

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Write SQL DDL statements to create and alter tables.

      2.    Write SQL DML statements to insert, update, and delete data.

      3.    Write SQL SELECT queries with WHERE, ORDER BY, and LIMIT clauses.

      4.    Apply SQL aggregate functions (COUNT, SUM, AVG, MIN, MAX) with GROUP BY and HAVING.

      5.    Write SQL JOIN queries to combine data from multiple tables.

      6.    Write basic subqueries.

    • Course Discussion Forum
      Due: Thursday, 2 July 2026, 7:50 PM
      Not available unless: The activity Course Outline is marked complete
    • Teaching and Learning Methods to be Employed

      1.    Lecture with step-by-step normalisation worked examples

      2.    Normalisation workshop — students normalise a given unnormalised table

      3.    Collection of Assignment 2

      4.    Discussion: Denormalisation trade-offs in real systems

       

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Define functional dependency and identify FDs from a given relation.

      2.    Explain update, insertion, and deletion anomalies.

      3.    Apply First Normal Form (1NF), Second Normal Form (2NF), and Third Normal Form (3NF).

      4.    Explain Boyce-Codd Normal Form (BCNF).

      5.    Describe the impact of normalisation on database efficiency.

       

    • Assignment 3
      Opens: Wednesday, 8 July 2026, 12:00 AM
      Not available unless: The activity Course Outline is marked complete
    • Due: Wednesday, 8 July 2026, 8:14 PM
    • Week 7 Book

      Teaching and Learning Methods to be Employed

      1.    Illustrated lecture comparing relational and semi-structured models

      2.    Hands-on exercise: converting relational data to JSON and XML

      3.    Demonstration: MySQL JSON data type and JSON functions

      4.    Case study: REST API responses in Nigerian fintech applications

       Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Explain the concept of semi-structured data and how it differs from structured relational data.

      2.    Describe the XML data model and its key components.

      3.    Write and read JSON documents for representing data.

      4.    Compare the strengths and weaknesses of relational vs. semi-structured models.

      5.    Explain when to use relational vs. semi-structured data storage.

      Not available unless: The activity Course Outline is marked complete
    • Due: Monday, 22 June 2026, 9:42 AM
    • Teaching and Learning Methods to be Employed

      1.    Lecture on security mechanisms with live SQL demonstrations

      2.    SQL injection attack demonstration and prevention

      3.    Lab: Creating users, granting/revoking privileges in MySQL

      4.    Discussion: NDPR compliance for Nigerian database systems

       

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Describe the major threats to database security.

      2.    Explain authentication, authorisation, and access control in DBMS.

      3.    Use SQL DCL commands (GRANT, REVOKE) to manage user privileges.

      4.    Explain how database views provide security through data abstraction.

      5.    Describe SQL injection and how to prevent it.

      6.    Explain encryption and audit trails as security mechanisms.

      7.    Describe the requirements of NDPR for database-driven applications.

    • Due: Friday, 24 July 2026, 6:51 AM
    • Teaching and Learning Methods to be Employed

      1.    Illustrated lecture on query processing pipeline

      2.    Lab: Using EXPLAIN in MySQL to analyse query execution plans

      3.    Index creation and performance comparison exercise

      4.    Collection of Assignment 3

       

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Describe the steps in query processing from SQL statement to query result.

      2.    Explain the role of the query optimiser in a DBMS.

      3.    Understand relational algebra as the basis for query evaluation.

      4.    Describe the structure and benefits of database indexes.

      5.    Use MySQL's EXPLAIN statement to interpret a query execution plan.

      6.    Apply basic query optimisation techniques.

    • Teaching and Learning Methods to be Employed

      1.    Illustrated lecture on transactions, ACID properties, and isolation levels

      2.    Concurrency problem demonstration with parallel transaction scenarios

      3.    Recovery mechanisms and log-based recovery exercise

      4.    Final course review and exam preparation session

       

      Learning Outcomes / Objectives

      By the end of this week, students should be able to:

      1.    Define a transaction and explain the ACID properties.

      2.    Describe the concurrency problems that arise when transactions execute simultaneously.

      3.    Explain lock-based and timestamp-based concurrency control protocols.

      4.    Describe transaction isolation levels and their trade-offs.

      5.    Explain the concept of database failure and recovery.

      6.    Describe log-based recovery and the ARIES algorithm concepts.

    • Due: Thursday, 30 July 2026, 7:12 AM
    • COURSE EXAMINATION GUIDE AND COMPLETE REFERENCE LISTS Page

      Sample Examination Questions by Learning Outcome

      Not available unless: The activity Course Outline is marked complete