| |
| |
Preface | |
| |
| |
| |
Background | |
| |
| |
| |
Introduction to Databases | |
| |
| |
| |
Introduction | |
| |
| |
| |
Traditional File-Based Systems | |
| |
| |
| |
Database Approach | |
| |
| |
| |
Roles in the Database Environment | |
| |
| |
| |
History of Database Management Systems | |
| |
| |
| |
Advantages and Disadvantages of DBMSs | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Database Environment | |
| |
| |
| |
The Three-Level ANSI-SPARC Architecture | |
| |
| |
| |
Database Languages | |
| |
| |
| |
Data Models and Conceptual Modeling | |
| |
| |
| |
Functions of a DBMS | |
| |
| |
| |
Components of a DBMS | |
| |
| |
| |
Multi-User DBMS Architectures | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
The Relational Model and Languages | |
| |
| |
| |
The Relational Model | |
| |
| |
| |
Brief History of the Relational Model | |
| |
| |
| |
Terminology | |
| |
| |
| |
Integrity Constraints | |
| |
| |
| |
Views | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Relational Algebra and Relational Calculus | |
| |
| |
| |
The Relational Algebra | |
| |
| |
| |
The Relational Calculus | |
| |
| |
| |
Other Languages | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
SQL: Data Manipulation | |
| |
| |
| |
Introduction to SQL | |
| |
| |
| |
Writing SQL Commands | |
| |
| |
| |
Data Manipulation | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
SQL: Data Definition | |
| |
| |
| |
The ISO SQL Data Types | |
| |
| |
| |
Integrity Enhancement Feature | |
| |
| |
| |
Data Definition | |
| |
| |
| |
Views | |
| |
| |
| |
Transactions | |
| |
| |
| |
Discretionary Access Control | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Query-By-Example | |
| |
| |
| |
Introduction to Microsoft Office Access Queries | |
| |
| |
| |
Building Select Queries Using QBE | |
| |
| |
| |
Using Advanced Queries | |
| |
| |
| |
Changing the Content of Tables Using Action Queries | |
| |
| |
Exercises | |
| |
| |
| |
Commercial RDBMSs: Office Access and Oracle | |
| |
| |
| |
Microsoft Office Access 2003 | |
| |
| |
| |
Oracle9i | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
| |
Database Analysis and Design Techniques | |
| |
| |
| |
Database Planning, Design, and Administration | |
| |
| |
| |
The Information Systems Lifecycle | |
| |
| |
| |
The Database System Development Lifecycle | |
| |
| |
| |
Database Planning | |
| |
| |
| |
System Definition | |
| |
| |
| |
Requirements Collection and Analysis | |
| |
| |
| |
Database Design | |
| |
| |
| |
DBMS Selection | |
| |
| |
| |
Application Design | |
| |
| |
| |
Prototyping | |
| |
| |
| |
Implementation | |
| |
| |
| |
Data Conversion and Loading | |
| |
| |
| |
Testing | |
| |
| |
| |
Operational Maintenance | |
| |
| |
| |
CASE Tools | |
| |
| |
| |
Data Administration and Database Administration | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Fact-Finding Techniques | |
| |
| |
| |
When Are Fact-Finding Techniques Used? | |
| |
| |
| |
What Facts Are Collected? | |
| |
| |
| |
Fact-Finding Techniques | |
| |
| |
| |
Using Fact-Finding Techniques--A Worked Example | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Entity-Relationship Modeling | |
| |
| |
| |
Entity Types | |
| |
| |
| |
Relationship Types | |
| |
| |
| |
Attributes | |
| |
| |
| |
Strong and Weak Entity Types | |
| |
| |
| |
Attributes on Relationships | |
| |
| |
| |
Structural Constraints | |
| |
| |
| |
Problems with ER Models | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Enhanced Entity-Relationship Modeling | |
| |
| |
| |
Specialization/Generalization | |
| |
| |
| |
Aggregation | |
| |
| |
| |
Composition | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Normalization | |
| |
| |
| |
The Purpose of Normalization | |
| |
| |
| |
How Normalization Supports Database Design | |
| |
| |
| |
Data Redundancy and Update Anomalies | |
| |
| |
| |
Functional Dependencies | |
| |
| |
| |
The Process of Normalization | |
| |
| |
| |
First Normal Form (1NF) | |
| |
| |
| |
Second Normal Form (2NF) | |
| |
| |
| |
Third Normal Form (3NF) | |
| |
| |
| |
General Definitions of 2NF and 3NF | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Advanced Normalization | |
| |
| |
| |
More on Functional Dependencies | |
| |
| |
| |
Boyce-Codd Normal Form (BCNF) | |
| |
| |
| |
Review of Normalization up to BCNF | |
| |
| |
| |
Fourth Normal Form (4NF) | |
| |
| |
| |
Fifth Normal Form (5NF) | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Methodology | |
| |
| |
| |
Methodology--Conceptual Database Design | |
| |
| |
| |
Introduction to the Database Design Methodology | |
| |
| |
| |
Overview of the Database Design Methodology | |
| |
| |
| |
Conceptual Database Design Methodology | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Methodology--Logical Database Design for the Relational Model | |
| |
| |
| |
Logical Database Design Methodology for the Relational Model | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Methodology--Physical Database Design for Relational Databases | |
| |
| |
| |
Comparison of Logical and Physical Database Design | |
| |
| |
| |
Overview of Physical Database Design Methodology | |
| |
| |
| |
The Physical Database Design Methodology for Relational Databases | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Methodology--Monitoring and Tuning the Operational System | |
| |
| |
| |
Denormalizing and Introducing Controlled Redundancy | |
| |
| |
| |
Monitoring the System to Improve Performance | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercise | |
| |
| |
| |
Selected Database Issues | |
| |
| |
| |
Security | |
| |
| |
| |
Database Security | |
| |
| |
| |
Countermeasures--Computer-Based Controls | |
| |
| |
| |
Security in Microsoft Office Access DBMS | |
| |
| |
| |
Security in Oracle DBMS | |
| |
| |
| |
DBMSs and Web Security | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Transaction Management | |
| |
| |
| |
Transaction Support | |
| |
| |
| |
Concurrency Control | |
| |
| |
| |
Database Recovery | |
| |
| |
| |
Advanced Transaction Models | |
| |
| |
| |
Concurrency Control and Recovery in Oracle | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Query Processing | |
| |
| |
| |
Overview of Query Processing | |
| |
| |
| |
Query Decomposition | |
| |
| |
| |
Heuristical Approach to Query Optimization | |
| |
| |
| |
Cost Estimation for the Relational Algebra Operations | |
| |
| |
| |
Enumeration of Alternative Execution Strategies | |
| |
| |
| |
Query Optimization in Oracle | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Distributed DBMSs and Replication | |
| |
| |
| |
Distributed DBMSs--Concepts and Design | |
| |
| |
| |
Introduction | |
| |
| |
| |
Overview of Networking | |
| |
| |
| |
Functions and Architectures of a DDBMS | |
| |
| |
| |
Distributed Relational Database Design | |
| |
| |
| |
Transparencies in a DDBMS | |
| |
| |
| |
Date's Twelve Rules for a DDBMS | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Distributed DBMSs--Advanced Concepts | |
| |
| |
| |
Distributed Transaction Management | |
| |
| |
| |
Distributed Concurrency Control | |
| |
| |
| |
Distributed Deadlock Management | |
| |
| |
| |
Distributed Database Recovery | |
| |
| |
| |
The X/Open Distributed Transaction Processing Model | |
| |
| |
| |
Distributed Query Optimization | |
| |
| |
| |
Distribution in Oracle | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Replication and Mobile Databases | |
| |
| |
| |
Introduction to Database Replication | |
| |
| |
| |
Benefits of Database Replication | |
| |
| |
| |
Applications of Replication | |
| |
| |
| |
Basic Components of Database Replication | |
| |
| |
| |
Database Replication Environments | |
| |
| |
| |
Replication Servers | |
| |
| |
| |
Introduction to Mobile Databases | |
| |
| |
| |
Oracle Replication | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Object DBMSs | |
| |
| |
| |
Introduction to Object DBMSs | |
| |
| |
| |
Advanced Database Applications | |
| |
| |
| |
Weaknesses of RDBMSs | |
| |
| |
| |
Object-Oriented Concepts | |
| |
| |
| |
Storing Objects in a Relational Database | |
| |
| |
| |
Next-Generation Database Systems | |
| |
| |
| |
Object-Oriented Database Design | |
| |
| |
| |
Object-Oriented Analysis and Design with UML | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Object-Oriented DBMSs--Concepts | |
| |
| |
| |
Introduction to Object-Oriented Data Models and OODBMSs | |
| |
| |
| |
OODBMS Perspectives | |
| |
| |
| |
Persistence | |
| |
| |
| |
Issues in OODBMSs | |
| |
| |
| |
Advantages and Disadvantages of OODBMSs | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Object-Oriented DBMSs--Standards and Systems | |
| |
| |
| |
Object Management Group | |
| |
| |
| |
Object Data Standard ODMG 3.0, 1999 | |
| |
| |
| |
ObjectStore | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Object-Relational DBMSs | |
| |
| |
| |
Introduction to Object-Relational Database Systems | |
| |
| |
| |
The Third-Generation Database Manifestos | |
| |
| |
| |
Postgres--An Early ORDBMS | |
| |
| |
| |
SQL:1999 and SQL:2003 | |
| |
| |
| |
Query Processing and Optimization | |
| |
| |
| |
Object-Oriented Extensions in Oracle | |
| |
| |
| |
Comparison of ORDBMS and OODBMS | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Web and DBMSs | |
| |
| |
| |
Web Technology and DBMSs | |
| |
| |
| |
Introduction to the Internet and Web | |
| |
| |
| |
The Web | |
| |
| |
| |
Scripting Languages | |
| |
| |
| |
Common Gateway Interface | |
| |
| |
| |
HTTP Cookies | |
| |
| |
| |
Extending the Web Server | |
| |
| |
| |
Java | |
| |
| |
| |
Microsoft's Web Platform | |
| |
| |
| |
Oracle Internet Platform | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Semistructured Data and XML | |
| |
| |
| |
Semistructured Data | |
| |
| |
| |
Introduction to XML | |
| |
| |
| |
XML-Related Technologies | |
| |
| |
| |
XML Schema | |
| |
| |
| |
XML Query Languages | |
| |
| |
| |
XML and Databases | |
| |
| |
| |
XML in Oracle | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Business Intelligence | |
| |
| |
| |
Data Warehousing Concepts | |
| |
| |
| |
Introduction to Data Warehousing | |
| |
| |
| |
Data Warehouse Architecture | |
| |
| |
| |
Data Warehouse Data Flows | |
| |
| |
| |
Data Warehousing Tools and Technologies | |
| |
| |
| |
Data Marts | |
| |
| |
| |
Data Warehousing Using Oracle | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercise | |
| |
| |
| |
Data Warehousing Design | |
| |
| |
| |
Designing a Data Warehouse Database | |
| |
| |
| |
Dimensionality Modeling | |
| |
| |
| |
Database Design Methodology for Data Warehouses | |
| |
| |
| |
Criteria for Assessing the Dimensionality of a Data Warehouse | |
| |
| |
| |
Data Warehousing Design Using Oracle | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
OLAP | |
| |
| |
| |
Online Analytical Processing | |
| |
| |
| |
OLAP Applications | |
| |
| |
| |
Representation of Multi-Dimensional Data | |
| |
| |
| |
OLAP Tools | |
| |
| |
| |
OLAP Extensions to the SQL Standard | |
| |
| |
| |
Oracle OLAP | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Data Mining | |
| |
| |
| |
Data Mining | |
| |
| |
| |
Data Mining Techniques | |
| |
| |
| |
The Data Mining Process | |
| |
| |
| |
Data Mining Tools | |
| |
| |
| |
Data Mining and Data Warehousing | |
| |
| |
| |
Oracle Data Mining (ODM) | |
| |
| |
Chapter Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
Appendices | |
| |
| |
| |
Users' Requirements Specification for DreamHome Case Study | |
| |
| |
| |
Branch User Views of DreamHome | |
| |
| |
| |
Staff User Views of DreamHome | |
| |
| |
| |
Other Case Studies | |
| |
| |
| |
The University Accommodation Office Case Study | |
| |
| |
| |
The EasyDrive School of Motoring Case Study | |
| |
| |
| |
The Wellmeadows Hospital Case Study | |
| |
| |
| |
File Organizations and Indexes | |
| |
| |
| |
Basic Concepts | |
| |
| |
| |
Unordered Files | |
| |
| |
| |
Ordered Files | |
| |
| |
| |
Hash Files | |
| |
| |
| |
Indexes | |
| |
| |
| |
Clustered and Non-Clustered Tables | |
| |
| |
| |
Guidelines for Selecting File Organizations | |
| |
| |
Appendix Summary | |
| |
| |
| |
When is a DBMS Relational? | |
| |
| |
| |
Programmatic SQL | |
| |
| |
| |
Embedded SQL | |
| |
| |
| |
Dynamic SQL | |
| |
| |
| |
The Open Database Connectivity (ODBC) Standard | |
| |
| |
Appendix Summary | |
| |
| |
Review Questions | |
| |
| |
Exercises | |
| |
| |
| |
Alternative ER Modeling Notations | |
| |
| |
| |
ER Modeling Using the Chen Notation | |
| |
| |
| |
ER Modeling Using the Crow's Feet Notation | |
| |
| |
| |
Summary of the Database Design Methodology for Relational Databases | |
| |
| |
References | |
| |
| |
Further Reading | |
| |
| |
Index | |