Introduction to Databases: Introduction, Characteristics of database approach,Advantages of using the DBMS approach, History of database applications.
Overview of Database Languages and Architectures: Data Models, Schemas,and Instances. Three schema architecture and data independence, databaselanguages, and interfaces, The Database System environment. Conceptual Data
Modelling using Entities and Relationships: Entity types, Entity sets,attributes, roles, and structural constraints, Weak entity types, ER diagrams,examples, Specialization and Generalization.
Textbook 1:Ch 1.1 to 1.8, 2.1 to 2.6, 3.1 to 3.10
Relational Model: Relational Model Concepts, Relational Model Constraintsand relational database schemas, Update operations, transactions, and dealingwith constraint violations. Relational Algebra: Unary and Binary relationaloperations, additional relational operations (aggregate, grouping, etc.) Examplesof Queries in relational algebra. Mapping Conceptual Design into a LogicalDesign: Relational Database Design using ER-to-Relational mapping. SQL:SQL data definition and data types, specifying constraints in SQL, retrievalqueries in SQL, INSERT, DELETE, and UPDATE statements in SQL,Additional features of SQL.
Textbook 1: Ch4.1 to 4.5, 5.1 to 5.3, 6.1 to 6.5, 8.1; Textbook 2: 3.5
SQL : Advances Queries: More complex SQL retrieval queries, Specifying
constraints as assertions and action triggers, Views in SQL, Schema change
statements in SQL. Database Application Development: Accessing databases
from applications, An introduction to JDBC, JDBC classes and interfaces, SQLJ,
Stored procedures, Case study: The internet Bookshop. Internet Applications:
The three-Tier application architecture, The presentation layer, The Middle Tier
Textbook 1: Ch7.1 to 7.4; Textbook 2: 6.1 to 6.6, 7.5 to 7.7.
Normalization: Database Design Theory – Introduction to Normalization using Functional and Multivalued Dependencies: Informal design guidelines for relation schema, Functional Dependencies, Normal Forms based on Primary Keys, Second and Third Normal Forms, Boyce-Codd Normal Form, Multivalued Dependency and Fourth Normal Form, Join Dependencies and Fifth Normal Form. Normalization Algorithms: Inference Rules, Equivalence, and Minimal Cover, Properties of Relational Decompositions, Algorithms for Relational Database Schema Design, Nulls, Dangling tuples, and alternate Relational Designs, Further discussion of Multivalued dependencies and 4NF, Other dependencies and Normal Forms
Textbook 1: Ch14.1 to 14.7, 15.1 to 15.6
Transaction Processing: Introduction to Transaction Processing, Transaction and System concepts, Desirable properties of Transactions, Characterizing schedules based on recoverability, Characterizing schedules based on Serializability, Transaction support in SQL.
Concurrency Control in Databases: Two-phase locking techniques for Concurrency control, Concurrency control based on Timestamp ordering, Multiversion Concurrency control
techniques, Validation Concurrency control techniques, Granularity of Data items and Multiple Granularity Locking.
Introduction to Database Recovery Protocols: Recovery Concepts, NO-UNDO/REDO recovery based on Deferred update, Recovery techniques based on immediate update, Shadow paging,
Database backup and recovery from catastrophic failures
Textbook 1: 20.1 to 20.6, 21.1 to 21.7, 22.1 to 22.4, 22.7.