Table of contents for Fundamentals of database systems / Ramez Elmasri, Shamkant B. Navathe.

Bibliographic record and links to related information available from the Library of Congress catalog.

Note: Contents data are machine generated based on pre-publication provided by the publisher. Contents may have variations from the printed book or be incomplete or contain other coding.


Counter
Contents
introduction and conceptual modeling
Databases and Database Users 3
	1.1	Introduction 4
	1.2	An Example 6
	1.3	Characteristics of the Database Approach 8
	1.4	Actors on the Scene 12
	1.5	Workers behind the Scene 14
	1.6	Advantages of Using the dbms Approach 15
	1.7	A Brief History of Database Applications 20
	1.8	When Not to Use a dbms 23
	1.9	Summary 23
	Review Questions 23
	Exercises 24
	Selected Bibliography 24
Database System Concepts and Architecture 25
	2.1	Data Models, Schemas, and Instances 26
	2.2	Three-Schema Architecture and Data Independence 29
	2.3	Database Languages and Interfaces 32
	2.4	The Database System Environment 35
	2.5	Centralized and Client/Server Architectures for dbmss 38
	2.6	Classification of Database Management Systems 43
	2.7	Summary 45
	Review Questions 46
	Exercises 46
	Selected Bibliography 47
Data Modeling Using the Entity-Relationship Model 49
	3.1	Using High-Level Conceptual Data Models for Database Design 50
	3.2	An Example Database Application 52
	3.3	Entity Types, Entity Sets, Attributes, and Keys 53
	3.4	Relationship Types, Relationship Sets, Roles, and Structural Constraints 61
	3.5	Weak Entity Types 68
	3.6	Refining the er Design for the company Database 69
	3.7	er Diagrams, Naming Conventions, and Design Issues 70
	3.8	Notation for uml Class Diagrams 74
	3.9	Summary 77
	Review Questions 78
	Exercises 78
	Selected Bibliography 83
Enhanced Entity-Relationship and uml Modeling 85
	4.1	Subclasses, Superclasses, and Inheritance 86
	4.2	Specialization and Generalization 88
	4.3	Constraints and Characteristics of Specialization and Generalization 91
	4.4	Modeling of union Types Using Categories 98
	4.5	An Example university eer Schema and Formal Definitions for the eer Model 101
	4.6	Representing Specialization/Generalization and Inheritance in uml Class Diagrams 104
	4.7	Relationship Types of Degree Higher Than Two 105
	4.8	Data Abstraction, Knowledge Representation, and Ontology Concepts 110
	4.9	Summary 115
	Review Questions 116
	Exercises 117
	Selected Bibliography 121
relational model: concepts, constraints, 
languages, design, and programming
The Relational Data Model and 
Relational Database Constraints 125
	5.1	Relational Model Concepts 126
	5.2	Relational Model Constraints and Relational Database Schemas 132
	5.3	Update Operations and Dealing with Constraint Violations 140
	5.4	Summary 143
	Review Questions 144
	Exercises 144
	Selected Bibliography 147
The Relational Algebra and Relational Calculus 149
	6.1	Unary Relational Operations: select and project 151
	6.2	Relational Algebra Operations from Set Theory 155
	6.3	Binary Relational Operations: join and division 158
	6.4	Additional Relational Operations 165
	6.5	Examples of Queries in Relational Algebra 171
	6.6	The Tuple Relational Calculus 173
	6.7	The Domain Relational Calculus 181
	6.8	Summary 184
	Review Questions 185
	Exercises 186
	Selected Bibliography 189
Relational Database Design by 
er- and eer-to-Relational Mapping 191
	7.1	Relational Database Design Using er-to-Relational Mapping 192
	7.2	Mapping eer Model Constructs to Relations 199
	7.3	Summary 203
	Review Questions 204
	Exercises 204
	Selected Bibliography 205
sql-99: Schema Definition, 
Basic Constraints, and Queries 207
	8.1	sql Data Definition and Data Types 209
	8.2	Specifying Basic Constraints in sql 213
	8.3	Schema Change Statements in sql 217
	8.4	Basic Queries in sql 218
	8.5	More Complex sql Queries 229
	8.6	Insert, Delete, and Update Statements in sql 245
	8.7	Additional Features of sql 248
	8.8	Summary 249
	Review Questions 251
	Exercises 251
	Selected Bibliography 252
More sql: Assertions, Views, and Programming Techniques 255
	9.1	Specifying General Constraints as Assertions 256
	9.2	Views (Virtual Tables) in sql 257
	9.3	Database Programming: Issues and Techniques 261
	9.4	Embedded sql, Dynamic sql, and sqlj 264
	9.5	Database Programming with Function Calls: sql/cli and jdbc 275
	9.6	Database Stored Procedures and sql/psm 284
	9.7	Summary 287
	Review Questions 287
	Exercises 287
	Selected Bibliography 289
database design theory and methodology
Functional Dependencies and 
Normalization for Relational Databases 293
	10.1	Informal Design Guidelines for Relation Schemas 295
	10.2	Functional Dependencies 304
	10.3	Normal Forms Based on Primary Keys 312
	10.4	General Definitions of Second and Third Normal Forms 320
	10.5	Boyce-Codd Normal Form 324
	10.6	Summary 326
	Review Questions 327
	Exercises 328
	Selected Bibliography 331
Relational Database Design 
Algorithms and Further Dependencies 333
	11.1	Properties of Relational Decompositions 334
	11.2	Algorithms for Relational Database Schema Design 340
	11.3	Multivalued Dependencies and Fourth Normal Form 347
	11.4	Join Dependencies and Fifth Normal Form 353
	11.5	Inclusion Dependencies 354
	11.6	Other Dependencies and Normal Forms 355
	11.7	Summary 357
	Review Questions 358
	Exercises 358
	Selected Bibliography 360
							Practical Database Design Methodology 
and Use of uml Diagrams 361
	12.1	The Role of Information Systems in Organizations 362
	12.2	The Database Design and Implementation Process 366
	12.3	Use of uml Diagrams as an Aid to Database Design Specification 385
	12.4	Rational Rose, A uml Based Design Tool 395
	12.5			Automated Database Design Tools 402
	12.6	Summary 404
	Review Questions 405
	Selected Bibliography 406
data storage, indexing, query processing, 
and physical design
Disk Storage, Basic File Structures, and Hashing 411
	13.1	Introduction 412
	13.2	Secondary Storage Devices 415
	13.3	Buffering of Blocks 421
	13.4	Placing File Records on Disk 422
	13.5	Operations on Files 427
	13.6	Files of Unordered Records (Heap Files) 430
	13.7	Files of Ordered Records (Sorted Files) 431
	13.8	Hashing Techniques 434
	13.9	Other Primary File Organizations 442
	13.10	Parallelizing Disk Access Using raid Technology 443
	13.11	Storage Area Networks 447
	13.12	Summary 449
	Review Questions 450
	Exercises 451
	Selected Bibliography 454
Indexing Structures for Files 455
	14.1	Types of Single-Level Ordered Indexes 456
	14.2	Multilevel Indexes 464
	14.3	Dynamic Multilevel Indexes Using B-Trees and B+-Trees 469
	14.4	Indexes on Multiple Keys 483
	14.5	Other Types of Indexes 485
	14.6	Summary 486
	Review Questions 487
	Exercises 488
	Selected Bibliography 490
Algorithms for Query Processing and Optimization 493
	15.1	Translating sql Queries into Relational Algebra 495
	15.2	Algorithms for External Sorting 496
	15.3	Algorithms for select and join Operations 498
	15.4	Algorithms for project and set Operations 508
	15.5	Implementing Aggregate Operations and Outer Joins 509
	15.6	Combining Operations Using Pipelining 511
	15.7	Using Heuristics in Query Optimization 512
	15.8	Using Selectivity and Cost Estimates in Query Optimization 523
	15.9	Overview of Query Optimization in oracle 532
	15.10	Semantic Query Optimization 533
	15.11	Summary 534
	Review Questions 534
	Exercises 535
	Selected Bibliography 536
Practical Database Design and Tuning 537
	16.1	Physical Database Design in Relational Databases 537
	16.2	An Overview of Database Tuning in Relational Systems 541
	16.3	Summary 547
	Review Questions 547
	Selected Bibliography 548
transaction processing concepts
Introduction to Transaction 
Processing Concepts and Theory 551
	17.1	Introduction to Transaction Processing 552
	17.2	Transaction and System Concepts 559
	17.3	Desirable Properties of Transactions 562
	17.4	Characterizing Schedules Based on Recoverability 563
	17.5	Characterizing Schedules Based on Serializability 566
	17.6	Transaction Support in sql 576
	17.7	Summary 578
	Review Questions 579
	Exercises 580
	Selected Bibliography 581
Concurrency Control Techniques 583
	18.1	Two-Phase Locking Techniques for Concurrency Control 584
	18.2	Concurrency Control Based on Timestamp Ordering 594
	18.3	Multiversion Concurrency Control Techniques 596
	18.4	Validation (Optimistic) Concurrency Control Techniques 599
	18.5	Granularity of Data Items and Multiple Granularity Locking 600
	18.6	Using Locks for Concurrency Control in Indexes 605
	18.7	Other Concurrency Control Issues 606
	18.8	Summary 607
	Review Questions 608
	Exercises 609
	Selected Bibliography 609
Database Recovery Techniques 611
	19.1	Recovery Concepts 612
	19.2	Recovery Techniques Based on Deferred Update 618
	19.3	Recovery Techniques Based on Immediate Update 622
	19.4	Shadow Paging 624
	19.5	The aries Recovery Algorithm 625
	19.6	Recovery in Multidatabase Systems 629
	19.7	Database Backup and Recovery from Catastrophic Failures 630
	19.8	Summary 631
	Review Questions 632
	Exercises 633
	Selected Bibliography 635
object and object-relational databases
Concepts for Object Databases 639
	20.1	Overview of Object-Oriented Concepts 641
	20.2	Object Identity, Object Structure, and Type Constructors 643
	20.3	Encapsulation of Operations, Methods, and Persistence 649
	20.4	Type and Class Hierarchies and Inheritance 654
	20.5	Complex Objects 657
	20.6	Other Objected-Oriented Concepts 659
	20.7	Summary 662
	Review Questions 663
	Exercises 664
	Selected Bibliography 664
Object Database Standards, Languages, and Design 665
	21.1	Overview of the Object Model of odmg 666
	21.2	The Object Definition Language odl 679
	21.3	The Object Query Language oql 684
	21.4	Overview of the c++ Language Binding 693
	21.5	Object Database Conceptual Design 694
	21.6	Summary 697
	Review Questions 698
	Exercises 698
	Selected Bibliography 699
Object-Relational and Extended-Relational Systems 701
	22.1	Overview of sql and Its Object-Relational Features 702
	22.2	Evolution and Current Trends of Database Technology 709
	22.3	The Informix Universal Server 711
	22.4	Object-Relational Features of Oracle 8 721
	22.5	Implementation and Related Issues for Extended Type Systems 724
	22.6	The Nested Relational Model 725
	22.7	Summary 727
	Selected Bibliography 728
further topics
Database Security and Authorization 731
	23.1	Introduction to Database Security Issues 732
	23.2	Discretionary Access Control Based on Granting and Revoking Privileges 735
	23.3	Mandatory Access Control and 
Role-Based Access Control for Multilevel Security 740
	23.4			Introduction to Statistical Database Security 746
	23.5	Introduction to Flow Control 747
	23.6	Encryption and Public Key Infrastructures 749
	23.7	Summary 751
	Review Questions 752
	Exercises 753
	Selected Bibliography 753
Enhanced Data Models for Advanced Applications 755
	24.1	Active Database Concepts and Triggers 757
	24.2	Temporal Database Concepts 767
	24.3	Multimedia Databases 780
	24.4	Introduction to Deductive Databases 784
	24.5	Summary 797
	Review Questions 797
	Exercises 798
	Selected Bibliography 801
Distributed Databases and 
Client-Server Architectures 803
	25.1	Distributed Database Concepts 804
	25.2	Data Fragmentation, Replication, and 
Allocation Techniques for Distributed Database Design 810
	25.3	Types of Distributed Database Systems 815
	25.4	Query Processing in Distributed Databases 818
	25.5	Overview of Concurrency Control and Recovery in Distributed Databases 824
	25.6	An Overview of 3-Tier Client-Server Architecture 827
	25.7	Distributed Databases in Oracle 830
	25.8	Summary 832
	Review Questions 833
	Exercises 834
	Selected Bibliography 835
emerging technologies
xml and Internet Databases 841
	26.1	Structured, Semistructured, and Unstructured Data 842
	26.2	xml Hierarchical (Tree) Data Model 846
	26.3	xml Documents, dtd, and xml Schema 848
	26.4	xml Documents and Databases 855
	26.5	xml Querying 862
	26.6	Summary 865
	Review Questions 865
	Exercises 866
	Selected Bibliography 866
Data Mining Concepts 867
	27.1	Overview of Data Mining Technology 868
	27.2	Association Rules 871
	27.3	Classification 882
	27.4	Clustering 885
	27.5	Approaches to Other Data Mining Problems 888
	27.6	Applications of Data Mining 891
	27.7	Commercial Data Mining Tools 891
	27.8	Summary 894
	Review Questions 894
	Exercises 895
	Selected Bibliography 896
Overview of Data Warehousing and OLAP 899
	28.1	Introduction, Definitions, and Terminology 900
	28.2	Characteristics of Data Warehouses 901
	28.3	Data Modeling for Data Warehouses 902
	28.4	Building a Data Warehouse 907
	28.5	Typical Functionality of a Data Warehouse 910
	28.6	Data Warehouse Versus Views 911
	28.7	Problems and Open Issues in Data Warehouses 912
	28.8	Summary 913
	Review Questions 914
	Selected Bibliography 914
Emerging Database Technologies and Applications 915
	29.1	Mobile Databases 916
	29.2	Multimedia Databases 923
	29.3	Geographic Information Systems 930
	29.4	Genome Data Management 936
appendix a 	Alternative Diagrammatic Notations 947
appendix b 	Database Design and Application 
Implementation Case Study-located on the web
appendix c 	Parameters of Disks 951
appendix d 	Overview of the qbe Language 955
appendix e 	Hierarchical Data Model-located on the web
appendix f 	Network Data Model-located on the web
Selected Bibliography 963
Index 1009

Library of Congress Subject Headings for this publication:

Database management.