csc265

Database Management System

Exam Preparation: 30 hours
Deep Understanding: 80 hours
Subject Code CSC 265
Credit Hours 3 Hours
Nature Theory + Lab
Full Marks 60 + 20 + 20
Pass Marks 24 + 8 + 8
Description

The course covers the basic concepts of databases, database system concepts and architecture, data modeling using ER diagram, relational model, SQL, relational algebra and calculus, normalization, transaction processing, concurrency control, and database recovery.

Objective

Course Contents

Database and Database Users

2 Hours

Introduction, Characteristics of the Database Approach, Actors on the Scene, Workers behind the Scene, Advantages of Using the DBMS Approach

Database System – Concepts and Architecture

3 Hours

Data Models, Schemas, and Instances, Three-Schema Architecture and Data Independence, Database Languages and Interfaces, Database System Environment, Centralized and Client/Server Architectures for DBMSs, Classification of Database Management Systems

Data Modeling Using the Entity-Relational Model

6 Hours

High-Level Conceptual Data Models for Database Design, Entity Types, Entity Sets, Attributes, and Keys, Relationship Types, Relationship Sets, Roles, Structural Constraints, Weak Entity Types, ER Diagrams, Naming Conventions, Design Issues, Relationship Types of Degree Higher Than Two, Subclasses, Superclasses, Inheritance, Specialization and Generalization, Constraints and Characteristics of Specialization and Generalization

The Relational Data Model and Relational Database Constraints

3 Hours

Relational Model Concepts, Relational Model Constraints and Relational Database Schemas, Update Operations, Transactions, and Constraint Violations

The Relational Algebra and Relational Calculus

5 Hours

Unary Relational Operations: SELECT and PROJECT, Relational Algebra Operations from Set Theory, Binary Relational Operations: JOIN and DIVISION, Additional Relational Operations, Tuple Relational Calculus, Domain Relational Calculus

SQL

8 Hours

Data Definition and Data Types, Specifying Constraints, Basic and Complex Retrieval Queries, INSERT, DELETE, and UPDATE Statements, Views

Relational Database Design

7 Hours

ER-to-Relational Mapping, Informal Design Guidelines for Relational Schemas, Functional Dependencies, Normal Forms: 1NF, 2NF, 3NF, BCNF, 4NF, Properties of Relational Decomposition

Introduction to Transaction Processing Concepts and Theory

4 Hours

Transaction Processing, Transaction and System Concepts, Desirable Properties of Transactions, Characterizing Schedules Based on Recoverability and Serializability

Concurrency Control Techniques

4 Hours

Two-Phase Locking Technique, Timestamp Ordering, Multiversion Concurrency Control, Validation (Optimistic) Techniques, Snapshot Isolation Concurrency Control

Database Recovery Techniques

3 Hours

Recovery Concepts, NO-UNDO/REDO Recovery Based on Deferred Update, Immediate Update Recovery Techniques, Shadow Paging, Database Backup and Recovery from Catastrophic Failures

Laboratory Works

Writing database programs to create and query databases using SQL (basic and advanced features)

Books

Textbooks

Fundamentals of Database Systems, 7th Edition, Ramez Elmasri, Shamkant B. Navathe, Pearson Education
Database System Concepts, 6th Edition, Avi Silberschatz, Henry F. Korth, S. Sudarshan, McGraw-Hill

Reference Books

Database Management Systems, 3rd Edition, Raghu Ramakrishnan, Johannes Gehrke, McGraw-Hill
A First Course in Database Systems, 3rd Edition, Jaffrey D. Ullman, Jennifer Widom, Pearson Education Limited