Fundamentals of database systems


Fundamentals of database systems

Ramez Elmasri, Shamkant B. Navathe

Pearson/Addison-Wesley, c2007

5th ed., international ed

  • : pbk

大学図書館所蔵 件 / 1



Includes Internet access card tipped in

Previous ed.: 2004

Includes bibliographical references and index



Clear explanations of theory and design, broad coverage of models and real systems, and an up-to-date introduction to modern database technologies result in a leading introduction to database systems. With fresh new problems and a new lab manual, students get more opportunities to practice the fundamentals of design and implementation. More real-world examples serve as engaging, practical illustrations of database concepts. The Fifth Edition maintains its coverage of the most popular database topics, including SQL, security, data mining, and contains a new chapter on web script programming for databases.


Part 1 - Introduction and Conceptual Modeling Chapter 1 - Databases and Database Users 1.1 Introduction 1.2 An Example 1.3 Characteristics of the Database Approach 1.4 Actors on the Scene 1.5 Workers behind the Scene 1.6 Advantages of Using the DBMS Approach 1.7 A Brief History of Database Applications 1.8 When Not to Use a DBMS 1.9 Summary Chapter 2 - Database System Concepts and Architecture 2.1 Data Models, Schemas, and Instances 2.2 Three-Schema Architecture and Data Independence 2.3 Database Languages and Interfaces 2.4 The Database System Environment 2.5 Centralized and Client/Server Architectures for DBMSs 2.6 Classification of Database Management Systems 2.7 Summary Chapter 3 - Data Modeling Using the Entity-Relationship (ER) Model 3.1 Using High-Level Conceptual Data Models for Database Design 3.2 An Example Database Application 3.3 Entity Types, Entity Sets, Attributes, and Keys 3.4 Relationship Types, Relationship Sets, Roles, and Structural Constraints 3.5 Weak Entity Types 3.6 Refining the ER Design for the COMPANY Database 3.7 ER Diagrams, Naming Conventions, and Design Issues 3.8 Example of Other Notation: UML Class Diagrams 3.9 Relationship Types of Degree Higher Than Two 3.10 Summary Chapter 4 - The Enhanced Entity-Relationship (EER) Model 4.1 Subclasses, Superclasses, and Inheritance 4.2 Specialization and Generalization 4.3 Constraints and Characteristics of Specialization and Generalization Hierarchies 4.4 Modelin of UNION Types Using Categories 4.5 An Example UNIVERSITY EER Schema, Design Choices, and Formal Definitions 4.6 Example of Other Notation: Representing Specialization and Generalization in UML Class Diagrams 4.7 Data Abstraction, Knowledge Representation, and Ontology Concepts Part 2- Relational Model: Concepts, Constraints, Languages, Design, and Programming Chapter 5 - The Relational Data Model and Relational Database Constraints 5.1 Relational Model Concepts 5.2 Relational Model Constraints and Relational Database Schemas 5.3 Update Operations, Tranactions, and Dealing with Constraint Violations 5.4 Summary Chapter 6 - The Relational Algebra and Relational Calculus 6.1 Unary Relational Operations: SELECT and PROJECT 6.2 Relational Algebra Operations from Set Theory 6.3 Binary Relational Operations: JOIN and DIVISION 6.4 Additional Relational Operations 6.5 Examples of Queries in Relational Algebra 6.6 The Tuple Relational Calculus 6.7 The Domain Relational Calculus 6.8 Summary Chapter 7 - Relational Database Design by ERand EER-to-Relational Mapping 7.1 Relational Database Design Using ER-to-Relational Mapping 7.2 Mapping EER Model Constructs to Relations 7.3 Summary Chapter 8 - SQL-99: Schema Definition, Constraints, Queries, and Views 8.1 SQL Data Definition and Data Types 8.2 Specifying Constraints in SQL 8.3 Schema Change Statements in SQL 8.4 Basic Queries in SQL 8.5 More Complex SQL Queries 8.6 INSERT, DELETE, and UPDATE Statements in SQL 8.7 Specifying Constraints as Assertions and Triggers 8.8 Views (Virtual Tables) in SQL 8.9 Additional Features of SQL 8.10 Summary Chapter 9 - Introduction to SQL Programming Techniques 9.1 Database Programming: Issues and Techniques 9.2 Embedded SQL, Dynamic SQL, and SQLJ 9.3 Database Programming with Function Calls: SQL/CLI and JDBC 9.4 Database Stored Procedures and SQL/PSM 9.5 Summary Part 3 - Database Design Theory and Methodology Chapter 10 - Functional Dependencies and Normalization for Relational Databases 10.1 Informal Design Guidelines for Relation Schemas 10.2 Functional Dependencies 10.3 Normal Forms Based on Primary Keys 10.4 General Definitions of Second and Third Normal Forms 10.5 Boyce-Codd Normal Form 10.6 Summary Chapter 11 - Relational Database Design Algorithms and Further Dependencies 11.1 Properties of Relational Decompositions 11.2 Algorithms for Relational Database Schema Design 11.3 Multivalued Dependencies and Fourth Normal Form 11.4 Join Dependencies and Fifth Normal Form 11.5 Inclusion Dependencies 11.6 Other Dependencies and Normal Forms 11.7 Summary Chapter 12 - Practical Database Design Methodology and Use of UML Diagrams 12.1 The Role of Information Systems in Organizations 12.2 The Database Design and Implementation Process 12.3 Use of UML Diagrams As an Aid to Database Design Specification 12.4 Rational Rose, a UML-Based Design Tool 12.5 Automated Database Design Tools 12.6 Summary Part 4 - Data Storage, Indexing, Query Processing, and Physical Design Chapter 13 - Disk Storage, Basic File Structures, and Hashing 13.1 Introduction 13.2 Secondary Storage Devices 13.3 Buffering of Blocks 13.4 Placing File Records on Disk 13.5 Operations on Files 13.6 Files of Unordered Records (Heap Files) 13.7 Files of Ordered Records (Sorted Files) 13.8 Hashing Techniques 13.9 Other Primary File Organizations 13.10 Parallelizing Disk Access Using RAID Technology 13.11 New Storage Systems 13.12 Summary Chapter 14 - Indexing Structures for Files 14.1 Types of Single-Level Ordered Indexes 14.2 Multilevel Indexes 14.3 Dynamic Multilevel Indexes Using B-Trees and B+-Trees 14.4 Indexes on Multiple Keys 14.5 Other Types of Indexes 14.6 Summary Chapter 15 - Algorithms for Query Processing and Optimization 15.1 Translating SQL Queries into Relational Algebra 15.2 Algorithms for External Sorting 15.3 Algorithms for SELECT and JOIN Operations 15.4 Algorithms for PROJECT and SET Operations 15.5 Implementing Aggregate Operations and OUTER JOINS 15.6 Combining Operations Using Pipelining 15.7 Using Heuristics in Query Optimization 15.8 Using Selectivity and Cost Estimates in Query Optimization 15.9 Overview of Query Optimization in Oracle 15.10 Semantic Query Optimization 15.11 Summary Chapter 16 - Physical Database Design and Tuning 16.1 Physical Database Design in Relational Databases 16.2 An Overview of Database Tuning in Relational Systems 16.3 Summary Part 5 - Transaction Processing Concepts Chapter 17 - Introduction to Transaction Processing Concepts and Theory 17.1 Introduction to Transaction Processing 17.2 Transaction and System Concepts 17.3 Desirable Properties of Transactions 17.4 Characterizing Schedules Based on Recoverability 17.5 Characterizing Schedules Based on Serializability 17.6 Transaction Support in SQL 17.7 Summary Chapter 18 - Concurrency Control Techniques 18.1 Two-Phase Locking Techniques for Concurrency Control 18.2 Concurrency Control Based on Timestamp Ordering 18.3 Multiversion Concurrency Control Techniques 18.4 Validation (Optimistic) Concurrency Control Techniques 18.5 Granularity of Data Items and Multiple Granularity Locking 18.6 Using Locks for Concurrency Control in Indexes 18.7 Other Concurrency Control Issues 18.8 Summary Chapter 19 - Database Recovery Techniques 19.1 Recovery Concepts 19.2 Recovery Techniques Based on Deferred Update 19.3 Recovery Techniques Based on Immediate Update 19.4 Shadow Paging 19.5 The ARIES Recovery Algorithm 19.6 Recovery in Multidatabase Systems 19.7 Database Backup and Recovery from Catastrophic Failures 19.8 Summary Part 6 - Object and Object-Relational Databases Chapter 20 - Concepts for Object Databases 20.1 Overview of Object-Oriented Concepts 20.2 Object Identity, Object Structure, and Type Constructors 20.3 Encapsulation of Operations, Methods, and Persistence 20.4 Type and Class Hierarchies and Inheritance 20.5 Complex Objects 20.6 Other Objected-Oriented Concepts 20.7 Summary Chapter 21 Object Database Standards, Languages, and Design 21.1 Overview of the Object Model of ODMG 21.2 The Object Definition Language ODL 21.3 The Object Query Language OQL 21.4 Overview of the C++ Language Binding 21.5 Object Database Conceptual Design 21.6 Summary Chapter 22 - Object-Relational and Extended-Relational Systems 22.1 Overview of SQL and Its Object-Relational Features 22.2 Evolution of Data Models and Current Trends of Database Technology 22.3 The Informix Universal Server 22.4 Object-Relational Features of Oracle 8 22.5 Implementation and Related Issues for Extended Type Systems 22.6 The Nested Relational Model 22.7 Summary Part 7 - Further Topics: Security, Advanced Modeling, and Distribution Chapter 23 - Database Security 23.1 Introduction to Database Security Issues 23.2 Discretionary Access Control Based on Granting and Revoking Privileges 23.3 Mandatory Access Control and Role-Based Access Control for Multilevel Security 23.4 Introduction to Statistical Database Security 23.5 Introduction to Flow Control 23.6 Encryption and Public Key Infrastructures 23.7 Privacy Issues and Preservation 23.8 Challenges of Database Security 23.9 Summary Chapter 24 - Enhanced Data Models for Advanced Applications 24.1 Active Database Concepts and Triggers 24.2 Temporal Database Concepts 24.3 Spatial and Multimedia Databases 24.4 Introduction to Deductive Databases 24.5 Summary Chapter 25 - Distributed Databases and Client-Server Architectures 25.1 Distributed Database Concepts 25.2 Data Fragmentation, Replication, and Allocation Techniques for Distributed Database Design 25.3 Types of Distributed Database Systems 25.4 Query Processing in Distributed Databases 25.5 Overview of Concurrency Control and Recovery in Distributed Databases 25.6 An Overview of 3-Tier Client-Server Architecture 25.7 Distributed Databases in Oracle 25.8 Summary Part 8 - Emerging Technologies Chapter 26 - Web Database Programming Using PHP 26.1 Structured, Semistructured, and Unstructured Data 26.2 A Simple PHP Example 26.3 Overview of Basic Features of PHP 26.4 Overview of PHP Database Programming 26.5 Summary Chapter 27 - XML: Extensible Markup Language 27.1 XML Hierarchical (Tree) Data Model 27.2 XML Documents, DTD, and XML Schema 27.3 XML Documents and Databases 27.4 XML Querying 27.5 Summary Chapter 28 - Data Mining Concepts 28.1 Overview of Data Mining Technology 28.2 Association Rules 28.3 Classification 28.4 Clustering 28.5 Approaches to Other Data Mining Problems 28.6 Applications of Data Mining 28.7 Commercial Data Mining Tools 28.8 Summary Chapter 29 - Overview of Data Warehousing and OLAP 29.1 Introduction, Definitions, and Terminology 29.2 Characteristics of Data Warehouses 29.3 Data Modeling for Data Warehouses 29.4 Building a Data Warehouse 29.5 Typical Functionality of a Data Warehouse 29.6 Data Warehouse versus Views 29.7 Problems and Open Issues in Data Warehouses 29.8 Summary Chapter 30 - Emerging Database Technologies and Applications 30.1 Mobile Databases 30.2 Multimedia Databases 30.3 Geographic Information Systems (GIS) 30.4 Genome Data Management Appendix A Alternative Diagrammatic Notations for ER Models Appendix B Parameters of Disks Appendix C Overview of the QBE Language C.1 Basic Retrievals in QBE C.2 Grouping, Aggregation, and Database Modification in QBE Appendix D Overview of the Hierarchical Data Model (located on the Companion Website at Appendix E Overview of the Network Data Model (located on the Companion Website at

「Nielsen BookData」 より


  • ISBN
    • 032141506X
  • 出版国コード
  • タイトル言語コード
  • 本文言語コード
  • 出版地
    Boston, Mass. ; Tokyo
  • ページ数/冊数
    xxviii, 1123 p
  • 大きさ
  • 分類
  • 件名