(All chapters begin with an Introduction end with a Summary, Exercises, and Reference and Bibliography) |
Preliminaries / I: |
An Overview of Database Management / 1: |
What is a database system? |
What is a database? |
Why database? |
Data independence |
Relational systems and others |
Database System Architecture / 2: |
The three levels of the architecture |
The external level |
The conceptual level |
The internal level |
Mappings |
The database administrator |
The database management system |
Data communications |
Client/server architecture |
Utilities |
Distributed processing |
An Introduction to Relational Databases / 3: |
An informal look at the relational model |
Relations and relvars |
What relations mean |
Optimization |
The catalog |
Base relvars and views |
Transactions |
The suppliers-and-parts database |
An Introduction to SQL / 4: |
Overview |
Views |
Embedded SQL |
Dynamic SQL and SQL/CLI |
SQL is not perfect |
The Relational Model / II: |
Types / 5: |
Values v Variables |
Types v Representations |
Type Definition |
Operators |
Type generators |
SQL facilities |
Relations / 6: |
Tuples |
Relation types |
Relation values |
Relation variables |
Relational Algebra / 7: |
Closure revisited |
The original algebra: Syntax |
The original algebra: Semantics |
Examples |
What is the algebra for? |
Further points |
Additional operators |
Grouping and ungrouping |
Relational Calculus / 8: |
Tuple calculus |
Calculus vs. algebra |
Computational capabilities |
Domain calculus |
Query-By-Example |
Integrity / 9: |
A closer look |
Predicates and propositions |
Relvar predicates and database predicates |
Checking the constraints |
Internal v external constraints |
Correctness v consistency |
Integrity and views |
A constraint classification scheme |
Keys |
Triggers (a digression) |
What are views for? / 10: |
View retrievals |
View updates |
Snapshots (a digression) |
Database Design / III: |
Functional Dependencies / 11: |
Basic definitions |
Trivial and nontrivial dependencies |
Closure of a set of dependencies |
Closure of a set of attributes |
Irreducible sets of dependencies |
Further Normalization I: 1NF, 2NF, 3NF, BCNF / 12: |
Nonloss decomposition and functional dependencies |
First, second, and third normal forms |
Dependency preservation |
Boyce/Codd normal form |
A note on relation-valued attributes |
Further Normalization II: Higher Normal Forms / 13: |
Multi-valued dependencies and fourth normal form |
Join dependencies and fifth normal form |
The normalization procedure summarized |
A note on denormalization |
Orthogonal design (a digression) |
Other normal forms |
Semantic Modeling / 14: |
The overall approach |
The E/R model |
E/R diagrams |
Database design with the E/R model |
A brief analysis |
Transaction Management / IV: |
Recovery / 15: |
Transaction recovery |
System recovery |
Media recovery |
Two-phase commit |
Savepoints (a digression) |
Concurrency / 16: |
Three concurrency problems |
Locking |
The three concurrency problems revisited |
Deadlock |
Serializability |
Recovery revisited |
Isolation levels |
Intent locking |
ACID dropping |
Further Topics / V: |
Security / 17: |
Discretionary access control |
Mandatory access control |
Statistical databases |
Data encryption |
A motivating example / 18: |
An overview of query processing |
Expression transformation |
Database statistics |
A divide-and-conquer strategy |
Implementing the relational operators |
Missing Information / 19: |
An overview of the 3VL approach |
Some consequences of the foregoing scheme |
Nulls and keys |
Outer join (a digression) |
Special values |
Type Inheritance / 20: |
Type hierarchies |
Polymorphism and substitutability |
Variables and assignments |
Specialization by constraint |
Comparisons |
Operators, versions, and signatures |
Is a circle an ellipse? |
Specialization by constraint revisited |
Distributed Databases / 21: |
Some preliminaries |
The twelve objectives |
Problems of distributed systems |
Client/server systems |
DBMS independence |
Decision Support / 22: |
Aspects of decision support |
Database design for decision support |
Data preparation |
Data warehouses and data marts |
Online analytical processing |
Data mining |
Temporal Databases / 23: |
What is the problem? |
Intervals |
Packing and unpacking relations |
Generalizing the relational operators |
Database work design |
Integrity constraints |
Logic-Based Databases / 24: |
Propositional calculus |
Predicate calculus |
A proof-theoretic view of databases |
Deductive database systems |
Recursive query processing |
Objects, Relations, And Xml / VI: |
Object Databases / 25: |
Objects, classes, methods, and messages |
A cradle-to-grave example |
Miscellaneous issues |
Object / Relational Databases / 26: |
The First Great Blunder |
The Second Great Blunder |
Implementation issues |
Benefits of true rapprochement |
The World Wide Web and XML / 27: |
The Web and the Internet |
An overview of XML |
XML data definition |
XML data manipulation |
XML and databases |
Appendixes |
The TransRelationalâäó Model / Appendix A: |
Three levels of abstraction |
The basic idea |
Condensed columns |
Merged columns |
SQL Expressions, Table Expressions, and Boolean Expressions / Appendix B: |
Abbreviations, Acronyms, and Symbol / Appendix C: |
Online storage structures and access methods, database access: an overview, page sets and files, indexing, hashing, pointer chains, and compression techniques / Appendix D: |
Index |
(All chapters begin with an Introduction end with a Summary, Exercises, and Reference and Bibliography) |
Preliminaries / I: |
An Overview of Database Management / 1: |