Part 1: Basic Concepts |
|
|
Databases and Database Users |
|
|
2 | (21) |
|
|
4 | (1) |
|
|
5 | (3) |
|
Characteristics of the Database Approach |
|
|
8 | (4) |
|
|
12 | (1) |
|
|
13 | (1) |
|
Advantages of Using a DBMS |
|
|
14 | (4) |
|
Implications of the Database Approach |
|
|
18 | (1) |
|
|
19 | (1) |
|
|
19 | (4) |
|
|
20 | (1) |
|
|
21 | (1) |
|
|
21 | (2) |
|
Database System Concepts and Architecture |
|
|
23 | (18) |
|
Data Models, Schemas, and Instances |
|
|
24 | (3) |
|
DBMS Architecture and Data Independence |
|
|
27 | (3) |
|
Database Languages and Interfaces |
|
|
30 | (2) |
|
The Database System Environment |
|
|
32 | (3) |
|
Classification of Database Management Systems |
|
|
35 | (2) |
|
|
37 | (4) |
|
|
38 | (1) |
|
|
39 | (1) |
|
|
39 | (2) |
|
Data Modeling Using the Entity-Relationship Model |
|
|
41 | (32) |
|
Using High-Level Conceptual Data Models for Database Design |
|
|
42 | (2) |
|
An Example Database Application |
|
|
44 | (1) |
|
Entity Types, Entity Sets, Attributes, and Keys |
|
|
45 | (7) |
|
Relationships, Relationship Types, Roles, and Structural Constraints |
|
|
52 | (7) |
|
|
59 | (1) |
|
Refining the ER Design for the Company Database |
|
|
60 | (1) |
|
ER Diagrams, Naming Conventions, and Design Issues |
|
|
61 | (5) |
|
|
66 | (7) |
|
|
67 | (1) |
|
|
67 | (5) |
|
|
72 | (1) |
|
Enhanced Entity-Relationship and Object Modeling |
|
|
73 | (40) |
|
Subclasses, Superclasses, and Inheritance |
|
|
74 | (2) |
|
Specialization and Generalization |
|
|
76 | (4) |
|
Constraints and Characteristics of Specialization and Generalization |
|
|
80 | (6) |
|
Modeling of Union Types Using Categories |
|
|
86 | (4) |
|
An Example University EER Schema and Formal Definitions for the EER Model |
|
|
90 | (3) |
|
Conceptual Object Modeling Using UML Class Diagrams |
|
|
93 | (2) |
|
Relationship Types of Degree Higher Than Two |
|
|
95 | (5) |
|
Data Abstraction and Knowledge Representation Concepts |
|
|
100 | (5) |
|
|
105 | (8) |
|
|
105 | (1) |
|
|
106 | (4) |
|
|
110 | (3) |
|
Record Storage and Primary File Organizations |
|
|
113 | (42) |
|
|
114 | (3) |
|
Secondary Storage Devices |
|
|
117 | (5) |
|
Parallelizing Disk Access Using raid Technology |
|
|
122 | (5) |
|
|
127 | (1) |
|
Placing File Records on Disk |
|
|
128 | (5) |
|
|
133 | (2) |
|
Files of Unordered Records (Heap Files) |
|
|
135 | (1) |
|
Files of Ordered Records (Sorted Files) |
|
|
136 | (3) |
|
|
139 | (9) |
|
Other Primary File Organizations |
|
|
148 | (1) |
|
|
149 | (6) |
|
|
149 | (1) |
|
|
150 | (3) |
|
|
153 | (2) |
|
Index Structures for Files |
|
|
155 | (38) |
|
Types of Single-Level Ordered Indexe |
|
|
156 | (10) |
|
|
166 | (3) |
|
Dynamic Multilevel Indexes Using B-Trees and B+-Trees |
|
|
169 | (14) |
|
|
183 | (3) |
|
|
186 | (1) |
|
|
187 | (6) |
|
|
188 | (1) |
|
|
188 | (2) |
|
|
190 | (3) |
Part 2: Relational Model, Languages, and Systems |
|
193 | (164) |
|
The Relational Data Model, Relational Constraints, and the Relational Algebra |
|
|
195 | (48) |
|
Relational Model Concepts |
|
|
196 | (6) |
|
Relational Constraints and Relational Database Schemas |
|
|
202 | (7) |
|
Update Operations and Dealing with Constraint Violations |
|
|
209 | (2) |
|
Basic Relational Algebra Operations |
|
|
211 | (15) |
|
Additional Relational Operations |
|
|
226 | (4) |
|
Examples of Queries in Relational Algebra |
|
|
230 | (2) |
|
|
232 | (11) |
|
|
233 | (2) |
|
|
235 | (5) |
|
|
240 | (3) |
|
SQL-The Relational Database Standard |
|
|
243 | (46) |
|
Data Definition, Constraints, and Schema Changes in SQL2 |
|
|
245 | (6) |
|
|
251 | (10) |
|
|
261 | (14) |
|
Insert, Delete, and Update Statements in SQL |
|
|
275 | (3) |
|
Views (Virtual Tables) in SQL |
|
|
278 | (4) |
|
Specifying General Constraints as Assertion |
|
|
282 | (1) |
|
Additional Features of SQL |
|
|
283 | (1) |
|
|
284 | (5) |
|
|
284 | (2) |
|
|
286 | (2) |
|
|
288 | (1) |
|
ER- and EER-to-Relational Mapping, and Other Relational Languages |
|
|
289 | (34) |
|
Relational Database Design Using ER-to-Relational Mapping |
|
|
290 | (5) |
|
Mapping EER Model Concepts to Relations |
|
|
295 | (4) |
|
The Tuple Relational Calculus |
|
|
299 | (9) |
|
The Domain Relational Calculus |
|
|
308 | (2) |
|
Overview of the QBE Language |
|
|
310 | (7) |
|
|
317 | (6) |
|
|
318 | (1) |
|
|
319 | (1) |
|
|
320 | (3) |
|
Examples of Relational Database Management Systems: Oracle and Microsoft Access |
|
|
323 | (34) |
|
Relational Database Management Systems: A Historical Perspective |
|
|
324 | (1) |
|
The Basic Structure of the Oracle System |
|
|
325 | (4) |
|
Database Structure and Its Manipulation in Oracle |
|
|
329 | (4) |
|
Storage Organization in Oracle |
|
|
333 | (4) |
|
Programming Oracle Applications |
|
|
337 | (6) |
|
|
343 | (1) |
|
An Overview of Microsoft Access |
|
|
344 | (7) |
|
Features and Functionality of Access |
|
|
351 | (4) |
|
|
355 | (2) |
|
|
355 | (2) |
Part 3: Object-Oriented and Extended Relational Database Technology |
|
357 | (106) |
|
Concepts for Object-Oriented Databases |
|
|
359 | (26) |
|
Overview of Object-Oriented Concepts |
|
|
361 | (2) |
|
Object Identity, Object Structure, and Type Constructors |
|
|
363 | (6) |
|
Encapsulation of Operations, Methods, and Persistence |
|
|
369 | (5) |
|
Type Hierarchies and Inheritance |
|
|
374 | (3) |
|
|
377 | (2) |
|
Other Object-Oriented Concepts |
|
|
379 | (3) |
|
|
382 | (3) |
|
|
383 | (1) |
|
|
384 | (1) |
|
|
384 | (1) |
|
Object Database Standards, Languages, and Design |
|
|
385 | (50) |
|
Overview of the Object Model of ODMG |
|
|
386 | (13) |
|
The Object Definition Language |
|
|
399 | (5) |
|
The Object Query Language |
|
|
404 | (9) |
|
Overview of the C++ Language Binding |
|
|
413 | (1) |
|
Object Database Conceptual Design |
|
|
414 | (3) |
|
|
417 | (11) |
|
Overview of the CORBA Standard for Distributed Objects |
|
|
428 | (3) |
|
|
431 | (4) |
|
|
432 | (1) |
|
|
432 | (1) |
|
|
433 | (2) |
|
Object Relational and Extended Relational Database Systems |
|
|
435 | (28) |
|
Evolution and Current Trends of Database Technology |
|
|
436 | (2) |
|
The Informix Universal Server |
|
|
438 | (10) |
|
Object-Relational Features of Oracle 8 |
|
|
448 | (3) |
|
|
451 | (7) |
|
Implementation and Related Issues for Extended Type Systems |
|
|
458 | (1) |
|
The Nested Relational Data Model |
|
|
459 | (2) |
|
|
461 | (2) |
|
|
462 | (1) |
Part 4: Database Design Theory and Methodology |
|
463 | (105) |
|
Functional Dependencies and Normalization for Relational Databases |
|
|
465 | (36) |
|
Informal Design Guidelines for Relation Schemas |
|
|
467 | (9) |
|
|
476 | (7) |
|
Normal Forms Based on Primary Keys |
|
|
483 | (7) |
|
General Definitions of Second and Third Normal Forms |
|
|
490 | (3) |
|
|
493 | (3) |
|
|
496 | (5) |
|
|
496 | (1) |
|
|
497 | (3) |
|
|
500 | (1) |
|
Relational Database Design Algorithms and Further Dependencies |
|
|
501 | (26) |
|
Algorithms for Relational Database Schema Design |
|
|
502 | (12) |
|
Multivalued Dependencies and Fourth Normal Form |
|
|
514 | (5) |
|
Join Dependencies and Fifth Normal Form |
|
|
519 | (1) |
|
|
520 | (1) |
|
Other Dependencies and Normal Forms |
|
|
521 | (2) |
|
|
523 | (4) |
|
|
524 | (1) |
|
|
524 | (1) |
|
|
525 | (2) |
|
Practical Database Design and Tuning |
|
|
527 | (41) |
|
The Role of Information Systems in Organizations |
|
|
528 | (4) |
|
The Database Design Process |
|
|
532 | (19) |
|
Physical Database Design in Relational Databases |
|
|
551 | (3) |
|
An Overview of Database Tuning in Relational Systems |
|
|
554 | (6) |
|
|
560 | (3) |
|
|
563 | (5) |
|
|
564 | (1) |
|
|
565 | (3) |
Part 5: System Implementation Techniques |
|
568 | (163) |
|
Database System Architectures and the System Catalog |
|
|
569 | (16) |
|
System Architectures for DBMSs |
|
|
570 | (3) |
|
Catalogs for Relational DBMSs |
|
|
573 | (4) |
|
System Catalog Information in ORACLE |
|
|
577 | (4) |
|
Other Catalog Information Accessed by DBMS Software Modules |
|
|
581 | (1) |
|
Data Dictionary and Data Repository Systems |
|
|
582 | (1) |
|
|
583 | (2) |
|
|
584 | (1) |
|
|
584 | (1) |
|
|
585 | (1) |
|
Query Processing and Optimization |
|
|
585 | (44) |
|
Translating SQL Queries into Relational Algebra |
|
|
587 | (1) |
|
Basic Algorithms for Executing Query Operations |
|
|
588 | (16) |
|
Using Heuristics in Query Optimization |
|
|
604 | (11) |
|
Using Selectivity and Cost Estimates in Query Optimization |
|
|
615 | (9) |
|
Overview of Query Optimization in ORACLE |
|
|
624 | (1) |
|
Semantic Query Optimization |
|
|
625 | (1) |
|
|
626 | (3) |
|
|
626 | (1) |
|
|
627 | (1) |
|
|
628 | (1) |
|
Transaction Processing Concepts |
|
|
629 | (32) |
|
Introduction to Transaction Processing |
|
|
630 | (7) |
|
Transaction and System Concepts |
|
|
637 | (3) |
|
Desirable Properties of Transactions |
|
|
640 | (1) |
|
Schedules and Recoverability |
|
|
641 | (3) |
|
Serializability of Schedules |
|
|
644 | (10) |
|
Transaction Support in SQL |
|
|
654 | (2) |
|
|
656 | (5) |
|
|
657 | (1) |
|
|
657 | (2) |
|
|
659 | (2) |
|
Concurrency Control Techniques |
|
|
661 | (28) |
|
Locking Techniques for Concurrency Control |
|
|
662 | (10) |
|
Concurrency Control Based on Timestamp Ordering |
|
|
672 | (2) |
|
Multiversion Concurrency Control Techniques |
|
|
674 | (3) |
|
Validation (Optimistic) Concurrency Control Techniques |
|
|
677 | (1) |
|
Granularity of Data Items and Multiple Granularity Locking |
|
|
678 | (5) |
|
Using Locks for Concurrency Control in Indexes |
|
|
683 | (1) |
|
Some Other Concurrency Control Issues |
|
|
684 | (1) |
|
|
685 | (4) |
|
|
686 | (1) |
|
|
687 | (1) |
|
|
687 | (2) |
|
Database Recovery Techniques |
|
|
689 | (26) |
|
|
690 | (6) |
|
Recovery Techniques Based on Deferred Update |
|
|
696 | (5) |
|
Recovery Techniques Based on Immediate Update |
|
|
701 | (1) |
|
|
702 | (2) |
|
The ARIES Recovery Algorithm |
|
|
704 | (4) |
|
Recovery in Multidatabase Systems |
|
|
708 | (1) |
|
Database Backup and Recovery from Catastrophic Failures |
|
|
709 | (1) |
|
|
709 | (6) |
|
|
710 | (1) |
|
|
711 | (2) |
|
|
713 | (2) |
|
Database Security and Authorization |
|
|
715 | (16) |
|
Introduction to Database Security Issues |
|
|
715 | (3) |
|
Discretionary Access Control Based on Granting/Revoking of Privileges |
|
|
718 | (5) |
|
Mandatory Access Control for Multilevel Security |
|
|
723 | (3) |
|
Introduction to Statistical Database Security |
|
|
726 | (2) |
|
|
728 | (3) |
|
|
728 | (1) |
|
|
729 | (1) |
|
|
729 | (2) |
Part 6: Advanced Database Concepts & Emerging Application |
|
731 | (178) |
|
Enhanced Data Models for Advanced Applications |
|
|
733 | (32) |
|
|
734 | (10) |
|
Temporal Database Concepts |
|
|
744 | (13) |
|
Spatial and Multimedia Databases |
|
|
757 | (3) |
|
|
760 | (5) |
|
|
761 | (1) |
|
|
762 | (1) |
|
|
763 | (2) |
|
Distributed Databases and Client-Server Architecture |
|
|
765 | (36) |
|
Distributed Database Concepts |
|
|
766 | (5) |
|
Data Fragmentation, Replication, and Allocation Techniques for Distributed Database Design |
|
|
771 | (7) |
|
Types of Distributed Database Systems |
|
|
778 | (3) |
|
Query Processing in Distributed Databases |
|
|
781 | (5) |
|
Overview of Concurrency Control and Recovery in Distributed Databases |
|
|
786 | (3) |
|
An Overview of Client-Server Architecture and Its Relationship to Distributed Databases |
|
|
789 | (2) |
|
Distributed Databases in Oracle |
|
|
791 | (2) |
|
Future Prospects of Client-Server Technology |
|
|
793 | (2) |
|
|
795 | (6) |
|
|
795 | (1) |
|
|
796 | (2) |
|
|
798 | (3) |
|
|
801 | (40) |
|
Introduction to Deductive Databases |
|
|
802 | (1) |
|
|
803 | (5) |
|
|
808 | (2) |
|
Basic Inference Mechanisms for Logic Programs |
|
|
810 | (3) |
|
Datalog Programs and Their Evaluation |
|
|
813 | (14) |
|
Deductive Database Systems |
|
|
827 | (5) |
|
Deductive Object-Oriented Databases |
|
|
832 | (2) |
|
Applications of Commercial Deductive Database Systems |
|
|
834 | (1) |
|
|
835 | (6) |
|
|
836 | (3) |
|
|
839 | (2) |
|
Data Warehousing and Data Mining |
|
|
841 | |
|
|
842 | (13) |
|
|
855 | (15) |
|
|
870 | |
|
|
871 | (1) |
|
|
872 | |
|
Emerging Database Technologies and Applications |
|
|
73 | (836) |
|
Databases on the World Wide Web |
|
|
874 | (6) |
|
|
880 | (6) |
|
|
886 | (5) |
|
Geographic Information Systems |
|
|
891 | (7) |
|
|
898 | (7) |
|
|
905 | (4) |
Appendix A Alternative Diagrammatic Notations |
|
909 | (4) |
Appendix B Parameters of Disks |
|
913 | (4) |
Appendix C An Overview of the Network Data Model |
|
917 | (24) |
Appendix D An Overview of the Hierarchical Data Model |
|
941 | |
Selected Bibliography |
|
B-1 | |
Index |
|
I-1 | |