MCA-502 Database Management Systems (3-0-0) 5 Credits
Course Objective:
1. Introducing basic database concepts like E-R Diagram, Relational Algebra,
2. Designing Normalized databases
3. Advantages, disadvantages and implementation of NoSQL database design in contrast to
SQL based database.
4. Introducing database transactions
Module-1: (10 Hours)
Introductory concepts of DBMS: Introduction and applications of DBMS, Purpose of data
base, Data, Independence, Database System architecture- levels, Mappings. Entity-
Relationship model: Basic concepts, Design process, constraints, Keys, Design issues, E-R
diagrams, weak entity sets. Reduction to E-R database schema.
Module-2: (10 Hours)
Database Programming: Relational Algebra and calculus (Domain and Tuple relational
calculus) Basics of SQL, DDL, DML, creation, alteration, defining constraints – Primary
key, foreign key, unique, not null, check, IN operator, Functions - aggregate functions, Built-
in functions –numeric, date, string functions, set operations, sub-queries, correlated sub-
queries, Use of group by, having, order by, join and its types, Exist, Any, All , view and its
types. Transaction control commands –Commit, Rollback, save point. Concepts, Cursors,
Stored Procedures, Stored Function, and Database Triggers.
Module-3: (10 Hours)
Normalization of Databases: Functional Dependency – definition, trivial and non-trivial FD,
closure of FD set, closure of attributes, irreducible set of FD, Normalization – 1NF, 2NF,
3NF,Decomposition using FD- dependency preservation, BCNF, Multi- valued dependency,
4NF, Join dependency and 5NF.
Module-4: (10 Hours)
Transaction Management: Transaction concepts, properties of transactions, serializability of
transactions, testing for serializability, System recovery, Two- Phase Commit protocol,
Recovery and Atomicity, Log-based recovery, concurrent executions of transactions and
related problems, Locking mechanism, solution to concurrency related problems, deadlock, ,
two-phase locking protocol. User security, grants, privileges, roles, access control.
Introduction to NoSQL.
Course Outcome:
1. Designing database and manipulating data for different real life problems
2. Apply SQL queries for retrieving columns using functions and related database.
3. Displaying data from multiple table using join and sub-queries
4. Designing and differentiating solutions using schema based database.
Suggested Books:
1. Elmasari;Navathe, Fundamentals of Database System, Seventh Edition, Pearson Education
Book .
2. Sudarshan, Korth, Database System Concepts, 6th edition, McGraw-Hill Education Book .
3. Prof. ParthaPratim Das, Department of Computer Science & Engineering, IIT
Kharagpur
https://onlinecourses.nptel.ac.in/noc18_cs15/preview
4. Prof. Arnab Bhattacharya, IIT Kanpur https://nptel.ac.in/courses/106104135/
5. Dr. Leo Mark, Georgia Institute of Technology, https://in.udacity.com/course/database-
systems-concepts-design--ud150