网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 数据库系统概念(英文精编版·原书第7版)
分类 教育考试-考试-计算机类
作者 (美)亚伯拉罕·西尔伯沙茨,(美)亨利·F.科思,(印)S.苏达尔尚
出版社 机械工业出版社
下载
简介
编辑推荐
数据库领域的殿堂级作品。夯实数据库理论基础,修炼数据库技术内功的推荐之选。对深入理解数据库,深人研究数据库,深入操作数据库都具有极强的指导作用!
内容推荐
《数据库系统概念》是数据库系统方面的经典教材之一,其内容由浅入深,既包含数据库系统基本概念,又反映数据库技术新进展。本书基于该书第7版进行改编,保留其中的基本内容,压缩或删除了一些不错内容,更加适合作为国内高校计算机及相关专业本科生数据库双语课程教材。
目录
Chapter 1 Introduction 1
1.1 Database-System Applications1
1.2 Purpose of Database Systems5
1.3 View of Data8
1.3.1 Data Models8
1.3.2 Relational Data Model9
1.3.3 Data Abstraction9
1.3.4 Instances and Schemas12
1.4 Database Languages 13
1.4.1 Data-Definition Language 13
1.4.2 The SQL Data-Definition Language 14
1.4.3 Data-Manipulation Language 15
1.4.4 The SQL Data-Manipulation Language 16
1.4.5 Database Access from Application Programs 16
1.5 Database Design 17
1.6 Database Engine 18
1.6.1 Storage Manager 19
1.6.2 The Query Processor 20
1.6.3 Transaction Management 20
1.7 Database and Application Architecture 21
1.8 Database Users and Administrators 23
1.8.1 Database Users and User Interfaces 24
1.8.2 Database Administrator 24
1.9 History of Database Systems 25
1.10 Summary 29
Review Terms 30
Practice Exercises 31
Exercises 32
Tools 33
Further Reading 33
Bibliography 33
PART 1 RELATIONAL LANGUAGES
Chapter 2 Introduction to the Relational Model 37
2.1 Structure of Relational Databases37
2.2 Database Schema41
2.3 Keys43
2.4 Schema Diagrams46
2.5 Relational Query Languages47
2.6 Summary48
Review Terms49
Practice Exercises49
Exercises50
Further Reading51
Bibliography51
Chapter 3 Introduction to SQL 53
3.1 Overview of the SQL Query Language53
3.2 SQL Data Definition54
3.2.1 Basic Types55
3.2.2 Basic Schema Definition 56
3.3 Basic Structure of SQL Queries 59
3.3.1 Queries on a Single Relation 59
3.3.2 Queries on Multiple Relations 62
3.4 Additional Basic Operations 67
3.4.1 The Rename Operation 67
3.4.2 String Operations 70
3.4.3 Attribute Specification in the Select Clause 71
3.4.4 Ordering the Display of Tuples 71
3.4.5 Where-Clause Predicates 72
3.5 Set Operations 73
3.5.1 The Union Operation 74
3.5.2 The Intersect Operation 75
3.5.3 The Except Operation 76
3.6 Null Values 77
3.7 Aggregate Functions 79
3.7.1 Basic Aggregation 79
3.7.2 Aggregation with Grouping 80
3.7.3 The Having Clause 83
3.7.4 Aggregation with Null and Boolean Values 84
3.8 Nested Subqueries 86
3.8.1 Set Membership 86
3.8.2 Set Comparison 87
3.8.3 Test for Empty Relations 89
3.8.4 Test for the Absence of Duplicate Tuples 91
3.8.5 Subqueries in the From Clause 92
3.8.6 The With Clause 93
3.8.7 Scalar Subqueries 94
3.8.8 Scalar Without a From Clause 95
3.9 Modification of the Database 96
3.9.1 Deletion 96
3.9.2 Insertion 98
3.9.3 Updates 99
3.10 Summary 102
Review Terms 103
Practice Exercises 103
Exercises 107
Tools 111
Further Reading 112
Bibliography 112
Chapter 4 Intermediate SQL 113
4.1 Join Expressions113
4.1.1 The Natural Join114
4.1.2 Join Conditions118
4.1.3 Outer Joins119
4.1.4 Join Types and Conditions124
4.2 Views125
4.2.1 View Definition126
4.2.2 Using Views in SQL Queries126
4.2.3 Materialized Views128
4.2.4 Update of a View128
4.3 Transactions131
4.4 Integrity Constraints133
4.4.1 Constraints on a Single Relation134
4.4.2 Not Null Constraint134
4.4.3 Unique Constraint135
4.4.4 The Check Clause135
4.4.5 Referential Integrity137
4.4.6 Assigning Names to Constraints139
4.4.7 Integrity Constraint Violation During a Transaction139
4.4.8 Complex Check Conditions and Assertions 140
4.5 SQL Data Types and Schemas 141
4.5.1 Date and Time Types in SQL 142
4.5.2 Type Conversion and Formatting Functions 143
4.5.3 Default Values 144
4.5.4 Large-Object Types 144
4.5.5 User-Defined Types 146
4.5.6 Generating Unique Key Values 148
4.5.7 Create Table Extensions 150
4.5.8 Schemas, Catalogs, and Environments 150
4.6 Index Definition in SQL 152
4.7 Authorization 153
4.7.1 Granting and Revoking of Privileges 154
4.7.2 Roles 155
4.7.3 Authorization on Views 157
4.7.4 Authorizations on Schema 158
4.7.5 Transfer of Privileges 158
4.7.6 Revoking of Privileges 159
4.7.7 Row-Level Authorization 161
4.8 Summary 161
Review Terms 163
Practice Exercises 164
Exercises 167
Further Reading 168
Bibliography 168
Chapter 5 Advanced SQL 171
5.1 Accessing SQL from a Programming Language171
5.1.1 JDBC172
5.1.2 Database Access from Python181
5.1.3 ODBC182
5.1.4 Embedded SQL185
5.2 Functions and Procedures 186
5.2.1 Declaring and Invoking SQL Functions and Procedures 187
5.2.2 Language Constructs for Procedures and Functions 189
5.2.3 External Language Routines 191
5.3 Triggers 194
5.3.1 Need for Triggers 194
5.3.2 Triggers in SQL 195
5.3.3 When Not to Use Triggers 198
5.4 Recursive Queries 201
5.4.1 Transitive Closure Using Iteration 202
5.4.2 Recursion in SQL 204
5.5 Advanced Aggregation Features 207
5.5.1 Ranking 207
5.5.2 Windowing 211
5.5.3 Pivoting 214
5.5.4 Rollup and Cube 215
5.6 Summary 219
Review Terms 219
Practice Exercises 220
Exercises 223
Tools 225
Further Reading 226
Chapter 6 Formal-Relational Query Languages 227
6.1 The Relational Algebra227
6.1.1 The Select Operation228
6.1.2 The Project Operation228
6.1.3 Composition of Relational Operations229
6.1.4 The Cartesian-Product Operation230
6.1.5 The Join Operation 231
6.1.6 Set Operations 232
6.1.7 The Assignment Operation 234
6.1.8 The Rename Operation 235
6.1.9 Equivalent Queries 237
6.2 The Tuple Relational Calculus 237
6.2.1 Example Queries 237
6.2.2 Formal Definition 241
6.2.3 Safety of Expressions 242
6.3 The Domain Relational Calculus 243
6.3.1 Formal Definition 243
6.3.2 Example Queries 244
6.3.3 Safety of Expressions 245
6.4 Expressive Power of Pure Relational Query Languages 246
6.5 Summary 247
Review Terms 247
Practice Exercises 247
Exercises 250
Further Reading 252
Bibliography 253
PART 2 DATABASE DESIGN AND APPLICATION DEVELOPMENT
Chapter 7 Database Design Using the E-R Model 257
7.1 Overview of the Design Process257
7.1.1 Design Phases257
7.1.2 Design Alternatives259
7.2 The Entity-Relationship Model260
7.2.1 Entity Sets260
7.2.2 Relationship Sets262
7.3 Complex Attributes 265
7.4 Mapping Cardinalities 268
7.5 Primary Key 272
7.5.1 Entity Sets 273
7.5.2 Relationship Sets 273
7.5.3 Weak Entity Sets 275
7.6 Removing Redundant Attributes in Entity Sets 277
7.7 Reducing E-R Diagrams to Relational Schemas 280
7.7.1 Representation of Strong Entity Sets 281
7.7.2 Representation of Strong Entity Sets with Complex Attributes 281
7.7.3 Representation of Weak Entity Sets 283
7.7.4 Representation of Relationship Sets 284
7.7.5 Redundancy of Schemas 285
7.7.6 Combination of Schemas 286
7.8 Extended E-R Features 287
7.8.1 Speization 287
7.8.2 Generalization 289
7.8.3 Attribute Inheritance 290
7.8.4 Constraints on Speizations 291
7.8.5 Aggregation 292
7.8.6 Reduction to Relation Schemas 293
7.9 Entity-Relationship Design Issues 295
7.9.1 Common Mistakes in E-R Diagrams 296
7.9.2 Use of Entity Sets versus Attributes 297
7.9.3 Use of Entity Sets versus Relationship Sets 298
7.9.4 Binary versus n-ary Relationship Sets 299
7.10 Alternative Notations for Modeling Data 301
7.10.1 Alternative E-R Notations 301
7.10.2 The Unified Modeling Language UML 304
7.11 Other Aspects of Database Design 307
7.11.1 Functional Requirements 307
7.11.2 Data Flow, Workflow 307
7.11.3 Schema Evolution 308
7.12 Summary 308
Review Terms 310
Practice Exercises 310
Exercises 313
Tools 316
Further Reading 316
Bibliography 317
Chapter 8 Relational Database Design 319
8.1 Features of Good Relational Designs 319
8.1.1 Decomposition 321
8.1.2 Lossless Decomposition 323
8.1.3 Normalization Theory 324
8.2 Decomposition Using Functional Dependencies 324
8.2.1 Notational Conventions 325
8.2.2 Keys and Functional Dependencies 325
8.2.3 Lossless Decomposition and Functional Dependencies 328
8.3 Normal Forms 329
8.3.1 Boyce-Codd Normal Form 329
8.3.2 Third Normal Form 333
8.3.3 Comparison of BCNF and 3NF 334
8.3.4 Higher Normal Forms 335
8.4 Functional-Dependency Theory 336
8.4.1 Closure of a Set of Functional Dependencies 336
8.4.2 Closure of Attribute Sets 338
8.4.3 Canonical Cover 340
8.4.4 Dependency Preservation 344
8.5 Algorithms for Decomposition Using Functional Dependencies 346
8.5.1 BCNF Decomposition 346
8.5.2 3NF Decomposition 349
8.5.3 Correctness of the 3NF Algorithm 350
8.6 Decomposition Using Multivalued Dependencies 352
8.6.1 Multivalued Dependencies 353
8.6.2 Fourth Normal Form 355
8.6.3 4NF Decomposition 356
8.7 More Normal Forms 357
8.8 Atomic Domains and First Normal Form 358
8.9 Database-Design Process 359
8.9.1 E-R Model and Normalization 360
8.9.2 Naming of Attributes and Relationships 361
8.9.3 Denormalization for Performance 362
8.9.4 Other Design Issues 362
8.10 Modeling Temporal Data 363
8.11 Summary 367
Review Terms 368
Practice Exercises 369
Exercises 373
Further Reading 376
Bibliography 377
Chapter 9 Application Development 379
9.1 Application Programs and User Interfaces 379
9.2 Web Fundamentals 381
9.2.1 Uniform Resource Locators 381
9.2.2 HyperText Markup Language 382
9.2.3 Web Servers and Sessions 384
9.3 Servlets 387
9.3.1 A Servlet Example 387
9.3.2 Servlet Sessions 389
9.3.3 Servlet Life Cycle 391
9.3.4 Application Servers 392
9.4 Alternative Server-Side Frameworks 392
9.4.1 Server-Side Scripting 392
9.4.2 Web Application Frameworks 394
9.4.3 The Django Framework 395
9.5 Client-Side Code and Web Services 397
9.5.1 JavaScript 397
9.5.2 Web Services 402
9.5.3 Disconnected Operation 403
9.5.4 Mobile Application Platforms 404
9.6 Application Architectures 405
9.6.1 The Business-Logic Layer 407
9.6.2 The Data-Access Layer and Object-Relational Mapping 407
9.7 Application Performance 410
9.7.1 Reducing Overhead by Caching 411
9.7.2 Parallel Processing 413
9.8 Application Security 413
9.8.1 SQL Injection 414
9.8.2 Cross-Site Scripting and Request Forgery 415
9.8.3 Password Leakage 416
9.8.4 Application-Level Authentication 417
9.8.5 Application-Level Authorization 419
9.8.6 Audit Trails 421
9.8.7 Privacy 422
9.9 Encryption and Its Applications 423
9.9.1 Encryption Techniques 423
9.9.2 Encryption Support in Databases 425
9.9.3 Encryption and Authentication 426
9.10 Summary 429
Review Terms 430
Practice Exercises 431
Exercises 432
Project Suggestions 434
Tools 438
Further Reading 438
Bibliography 439
PART 3 DATA MANAGEMENT IMPLEMANTATION
Chapter 10 Storage Management 443
10.1 Overview of Physical Storage Media443
10.2 Storage Interfaces446
10.3 Magnetic Disks447
10.3.1 Physical Characteristics of Disks 447
10.3.2 Performance Measures of Disks 449
10.4 Flash Memory 451
10.5 File Organization 454
10.5.1 Fixed-Length Records 454
10.5.2 Variable-Length Records 457
10.5.3 Storing Large Objects 459
10.6 Organization of Records in Files 460
10.6.1 Heap File Organization 461
10.6.2 Sequential File Organization 463
10.6.3 Multitable Clustering File Organization 465
10.6.4 Partitioning 467
10.7 Data-Dictionary Storage 467
10.8 Database Buffer 470
10.8.1 Buffer Manager 470
10.8.2 Buffer-Replacement Strategies 473
10.8.3 Reordering of Writes and Recovery 475
10.9 Summary 476
Review Terms 477
Practice Exercises 479
Exercises 480
Further Reading 481
Bibliography 482
Chapter 11 Indexing 483
11.1 Basic Concepts483
11.2 Ordered Indices485
11.2.1 Dense and Sparse Indices486
11.2.2 Multilevel Indices488
11.2.3 Index Update490
11.2.4 Secondary Indices492
11.2.5 Indices on Multiple Keys493
11.3 B+-Tree Index Files 494
11.3.1 Structure of a B+-Tree 494
11.3.2 Queries on B+-Trees 497
11.3.3 Updates on B+-Trees 501
11.3.4 Complexity of B+-Tree Updates 507
11.3.5 Nonunique Search Keys 509
11.4 Hash Indices 510
11.5 Multiple-Key Access  513
11.5.1 Using Multiple Single-Key Indices 513
11.5.2 Indices on Multiple Keys 514
11.5.3 Covering Indices 515
11.6 Creation of Indices 516
11.7 Bitmap Indices 517
11.8 Summary 519
Review Terms 520
Practice Exercises 521
Exercises 523
Further Reading 524
Bibliography 524
Chapter 12 Query Processing and Optimization 525
12.1 Overview525
12.2 Measures of Query Cost528
12.3 Execution of Relational Algebra Operations531
12.3.1 Selection Operation531
12.3.2 Sorting537
12.3.3 Join Operation540
12.3.4 Other Operations555
12.4 Evaluation of Expressions560
12.4.1 Materialization560
12.4.2 Pipelining 561
12.4.3 Pipelines for Continuous-Stream Data 564
12.5 Query Optimization 564
12.5.1 Overview 565
12.5.2 Transformation of Relational Expressions 567
12.5.3 Estimating Statistics of Expression Results 578
12.5.4 Choice of Evaluation Plans 587
12.6 Summary 599
Review Terms 602
Practice Exercises 603
Exercises 609
Further Reading 611
Bibliography 611
Chapter 13 Transaction Management 613
13.1 Transaction Concept 613
13.2 A Simple Transaction Model 615
13.3 Storage Structure 618
13.4 Transaction Atomicity and Durability 619
13.5 Transaction Isolation 621
13.6 Serializability 626
13.7 Transaction Isolation and Atomicity 633
13.7.1 Recoverable Schedules 633
13.7.2 Cascadeless Schedules 634
13.8 Transaction Isolation Levels 635
13.9 Implementation of Isolation Levels 637
13.9.1 Locking 637
13.9.2 Timestamps 639
13.9.3 Multiple Versions and Snapshot Isolation 639
13.10 Transactions as SQL Statements 640
13.11 Summary 642
Review Terms 644
Practice Exercises 645
Exercises 646
Further Reading 648
Bibliography 648
Chapter 14 Concurrency Control and Recovery 649
14.1 Lock-Based Protocols649
14.1.1 Locks649
14.1.2 Granting of Locks654
14.1.3 The Two-Phase Locking Protocol 655
14.1.4 Implementation of Locking 658
14.1.5 Graph-Based Protocols 660
14.2 Deadlock Handling 663
14.2.1 Deadlock Prevention 663
14.2.2 Deadlock Detection and Recovery 665
14.3 Multiple Granularity 667
14.4 Insert Operations, Delete Operations, and Predicate Reads 671
14.4.1 Deletion 671
14.4.2 Insertion 672
14.4.3 Predicate Reads and The Phantom Phenomenon 672
14.5 Timestamp-Based Protocols 675
14.5.1 Timestamps 675
14.5.2 The Timestamp-Ordering Protocol 676
14.5.3 Thomas?Write Rule 678
14.6 Validation-Based Protocols 680
14.7 Multiversion Schemes 683
14.7.1 Multiversion Timestamp Ordering 684
14.7.2 Multiversion Two-Phase Locking 685
14.8 Failure Classification 686
14.9 Storage 688
14.9.1 Stable-Storage Implementation 688
14.9.2 Data Access 690
14.10 Recovery and Atomicity 692
14.10.1 Log Records 692
14.10.2 Database Modification 694
14.10.3 Concurrency Control and Recovery 695
14.10.4 Transaction Commit 696
14.10.5 Using the Log to Redo and Undo Transactions 696
14.10.6 Checkpoints 700
14.11 Recovery Algorithm 702
14.11.1 Transaction Rollback 702
14.11.2 Recovery After a System Crash 702
14.11.3 Optimizing Commit Processing 704
14.12 Buffer Management 705
14.12.1 Log-Record Buffering 706
14.12.2 Database Buffering 707
14.12.3 Operating System Role in Buffer Management 709
14.12.4 Fuzzy Checkpointing 710
14.13 Summary 710
Review Terms 714
Practice Exercises 716
Exercises 719
Further Reading 721
Bibliography 721
PART 4 ADVANCED TOPICS
Chapter 15 Big Data Analytics
Chapter 16 Blockchain Databases
Chapter 17 Advanced Application Development
Appendix A Detailed University Schema
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/4/17 12:50:42