[Unit 1] Introduction
- Introduction
- Database System Applications, Purpose of Database Systems.
- View of Data, Database Languages, Relational Databases, Database Design,
- Data Storage and Querying, Transaction Management
- Database Architecture
- Data modeling using the Entity Relationship Model: ER model concepts
- Notation for ER diagram, Constraints, keys, E-R Diagrams
- Mapping Cardinality
- Concepts of Super Key, candidate key, primary key, weak entity sets, Codd‘s rules
- Extended ER model
- Generalization, Aggregation
- Reduction of an ER diagram to table
[Unit 2] Relational Data Model, Relational Algebra and Calculus
- Relational Data Model, Relational Algebra and Calculus
- Structure of Relational Databases, Database Schema
- Keys Relational algebra: Fundamental Operations
- Additional Relational Algebra Operations
- Extended Relational Algebra Operations.
- Calculus: Tuple relational calculus, Domain relational Calculus
- Calculus vs algebra
- Computational capabilities.
[Unit 3] Introduction to SQL
- Overview of SQL, SQL Data Definition, Basic Structure of SQL Queries
- Additional Basic Operators, Set Operations
- Null Values, Aggregate Functions, Nested Sub queries
- Modification of the Database Intermediate SQL : Join Expressions, Views
- Transactions, Integrity Constraints, SQL Data Types and Schema
- Authorization, Advanced SQL : Assessing SQL from Programming Language
- JDBC, ODBC, Embedded SQL
- Functions and Procedures, Triggers
[Unit 4] Relational Database Design and File Organization, Indexing & Hashing
- Normalization: Features of good relational designs
- Functional dependencies, Normal forms, First, Second, Third normal forms, BCNF
- Functional Dependency Theory, Multivalued Dependencies
- Fourth Normal Form,
- Database Design Process. File Organization
- Ordered Indices, B+tree Index files
- B Tree Index File, Static Hashing, Dynamic Hashing,
[Unit 5] Transaction Processing
- Transaction Concept, A simple Transaction Model,
- Transaction Atomicity and Durability,
- Transaction Isolation,
- ACID Properties, Serializability
- Concurrency Control Techniques: Lock based Protocols,
- Deadlock handling, Multiple Granularity,
- Time stamp-Based Protocols, Recovery System.