Preliminaries and Overview / Chapter 1: |
Introduction / 1.1: |
The Database Environment / 1.2: |
Architecture of Database Systems / 1.3: |
Data Models / 1.4: |
Entity Relationship Model / 1.4.1: |
Database Languages / 1.4.2: |
Structuring Database Systems / 1.5: |
Functional Architecture / 1.5.1: |
The Client-Server Architecture / 1.5.2: |
Personal Computer Database Systems / 1.5.3: |
Online Transaction Processing Systems / 1.5.4: |
From Databases to Knowledge-Bases / 1.6: |
Summary / 1.7: |
Exercises |
Bibliographic Notes and References |
The Relational Model / Chapter 2: |
The Relational Data Model / 2.1: |
ER Model and Relational Model / 2.1.1: |
Integrity Rules / 2.2: |
Functional Dependency / 2.3: |
Normal Forms for Relations / 2.4: |
First Three Normal Forms / 2.4.1: |
Boyce-Codd Normal Form / 2.4.2: |
Relational Operations and Further Normalization / 2.5: |
Relational Algebra Operators / 3.1: |
Basic Operators / 3.1.1: |
Derived Operators / 3.1.2: |
Relational Calculus / 3.2: |
Multivalued Dependencies / 3.3: |
The Fourth Normal Form / 3.4: |
Lossless Join Decomposition / 3.5: |
Join Dependency / 3.6: |
The Fifth Normal Form / 3.6.1: |
Relational Database Languages and Systems / 3.7: |
SQL / 4.1: |
Operations on Single Tables / 4.1.1: |
Queries Involving more than One Table / 4.1.2: |
Nested Queries / 4.1.3: |
Aggregate Functions / 4.1.4: |
Other Operations / 4.1.5: |
Shortcomings of SQL / 4.1.6: |
QUEL / 4.2: |
Aggregate Operations / 4.2.1: |
Query-By-Example / 4.2.2: |
Aggregate Operators / 4.3.1: |
Recursive Queries / 4.3.2: |
Criteria for Evaluating Relational Database Systems / 4.4: |
Hierarchical and Network Models / 4.5: |
The Hierarchical Data Model / 5.1: |
Translating Entity-Relationship Representations / 5.1.1: |
Logical Relationships / 5.1.2: |
Database Definition / 5.1.3: |
Hierarchical Data Manipulation / 5.2: |
The Network Model / 5.3: |
From Hierarchy to Network / 5.3.1: |
Background / 5.3.2: |
Network Model Data Structures / 5.3.3: |
The DBTG Set / 5.3.4: |
Data Definition Language / 5.3.5: |
Network Data Manipulation / 5.4: |
Conclusion / 5.5: |
Physical Data Organization / 5.6: |
Basic Concepts / 6.1: |
Addressing / 6.1.1: |
Performance Measures / 6.1.2: |
Heap Storage / 6.2: |
Indexed Sequential Organization / 6.3: |
Multi-level Indexes / 6.3.1: |
Tree Structures / 6.3.2: |
The B-Tree Organization / 6.4: |
B+trees / 6.4.1: |
Hashed Files / 6.5: |
Basic Hashing Scheme / 6.5.1: |
Problems with the Basic Scheme / 6.5.2: |
Extendible Hashing / 6.6: |
Linear Hashing / 6.7: |
Multi-key Organizations / 6.8: |
Grid Files / 6.9: |
Partitioned Hash Functions / 6.10: |
Elements of Database Design / 6.11: |
Requirement Analysis / 7.1: |
Conceptual Modeling / 7.2: |
The Extended Entity-Relationship Model / 7.2.1: |
Conceptual Representation with the EER Model / 7.2.2: |
Data Modeling / 7.3: |
Transaction Analysis / 7.4: |
Database Performance / 7.5: |
Tools for Physical Database Design / 7.5.1: |
Protection and Preservation of Databases / 7.6: |
Transactions / 8.1: |
Integrity Control / 8.2: |
Integrity Constraints / 8.2.1: |
Integrity Constraints in SQL / 8.2.2: |
Integrity Features in INGRES / 8.2.3: |
Security / 8.3: |
Views / 8.3.1: |
View Definition and Authorization in SQL / 8.3.2: |
Security Features in INGRES / 8.3.3: |
Database Recovery / 8.4: |
Log-based Recovery Schemes / 8.4.1: |
Shadow Paging / 8.4.2: |
Concurrency Control / 8.5: |
Transactions and Serializability / 9.1: |
Concurrency Control through Locking / 9.2: |
Deadlocks / 9.2.1: |
Avoiding Deadlocks / 9.2.2: |
Deadlock Detection and Resolution / 9.2.3: |
Locking Modes / 9.2.4: |
Timestamping / 9.3: |
Distributed Database Systems / 9.4: |
Features of Distributed Database Systems / 10.1: |
Structuring Distributed Databases / 10.2: |
Query Optimization / 10.3: |
Semijoin Programs / 10.3.1: |
Concurrency Control based on Locking / 10.4: |
Handling Deadlocks / 10.4.2: |
Recovery / 10.4.3: |
Two-phase Commit Protocol / 10.5.1: |
Implementations / 10.6: |
Deductive Databases / 10.7: |
Structure / 11.1: |
Architecture / 11.1.2: |
Basic Elements / 11.2: |
Database Systems and Prolog / 11.3: |
Inference and Query Processing in Prolog / 11.3.1: |
Prolog for Database Queries / 11.3.2: |
Limitations of Prolog for Database Usage / 11.3.3: |
Datalog / 11.4: |
Query Processing Strategies / 11.5: |
Recursive Query Processing / 11.5.1: |
Naive Evaluation / 11.5.2: |
Semi-Naive Evaluation / 11.5.3: |
Magic Sets / 11.5.4: |
Object-Oriented Database Systems / 11.6: |
Object-Oriented Programming Languages / 12.1: |
Features of Object-Oriented Database Systems / 12.3: |
Querying Object-Oriented Databases / 12.4: |
Preliminaries and Overview / Chapter 1: |
Introduction / 1.1: |
The Database Environment / 1.2: |