《数据库系统概念 原书第5版》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:Abraham Silberschatz,Henry F. Korth,S. Sudarshan著;杨冬青,马秀莉,唐世渭等译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2006
  • ISBN:7111196872
  • 页数:775 页
图书介绍:本书是国际上许多著名大学的教学用书,其主要内容包括:数据库系统的综合介绍、关系数据库、SQL、数据库的应用设计和开发等。

第1章 引言 1

1.1 数据库系统的应用 1

1.2 数据库系统的目标 2

1.3 数据视图 3

1.3.1 数据抽象 4

1.3.3 数据模型 5

1.3.2 实例和模式 5

1.4.2 数据定义语言 6

1.4.1 数据操纵语言 6

1.4 数据库语言 6

1.5.1 表 7

1.5 关系数据库 7

1.5.3 数据定义语言 8

1.5.2 数据操纵语言 8

1.6.1 设计过程 9

1.6 数据库设计 9

1.5.4 来自应用程序的数据库访问 9

1.6.3 实体-联系模型 10

1.6.2 银行企业的数据库设计 10

1.6.4 规范化 11

1.8 数据存储和查询 12

1.7.2 半结构化数据模型 12

1.7 基于对象数据库和半结构化数据库 12

1.7.1 基于对象数据模型 12

1.9 事务管理 13

1.8.2 查询处理器 13

1.8.1 存储管理器 13

1.10 数据挖掘与分析 14

1.11 数据库体系结构 15

1.12.2 数据库管理员 17

1.12.1 数据库用户和用户界面 17

1.12 数据库用户和管理员 17

1.13 数据库系统的历史 18

1.14 小结 19

文献注解 20

习题 20

术语回顾 20

实践习题 20

2.1.1 基本结构 24

2.1 关系数据库的结构 24

第一部分 关系数据库 24

第2章 关系模型 24

2.1.2 数据库模式 25

2.1.3 码 27

2.1.4 查询语言 28

2.2.2 投影运算 29

2.2.1 选择运算 29

2.2 关系代数基本运算 29

2.2.5 集合差运算 30

2.2.4 并运算 30

2.2.3 关系运算的组合 30

2.2.6 笛卡儿积运算 31

2.2.7 更名运算 33

2.3 附加的关系代数运算 34

2.2.8 关系代数的形式化定义 34

2.3.2 自然连接运算 35

2.3.1 集合交运算 35

2.3.3 除运算 36

2.4 扩展的关系代数运算 37

2.3.4 赋值运算 37

2.4.2 聚集函数 38

2.4.1 广义投影 38

2.4.3 外连接 39

2.5 空值 41

2.6.2 插入 42

2.6.1 删除 42

2.6 数据库的修改 42

2.7 小结 43

2.6.3 更新 43

实践习题 44

术语回顾 44

习题 45

文献注解 46

3.1 背景 47

第3章 SQL 47

3.2.2 SQL中的基本模式定义 48

3.2.1 基本域类型 48

3.2 数据定义 48

3.3.1 select子句 50

3.3 SQL查询的基本结构 50

3.3.3 from子句 51

3.3.2 where子句 51

3.3.5 元组变量 52

3.3.4 更名运算 52

3.3.6 字符串运算 53

3.3.8 重复 54

3.3.7 排列元组的显示次序 54

3.4.2 intersect运算 55

3.4.1 union运算 55

3.4 集合运算 55

3.5 聚集函数 56

3.4.3 except运算 56

3.6 空值 58

3.7.1 集合成员资格 59

3.7 嵌套子查询 59

3.7.3 测试是否为空关系 60

3.7.2 集合的比较 60

3.7.4 测试是否存在重复元组 61

3.8.2 with子句 62

3.8.1 派生关系 62

3.8 复杂查询 62

3.9 视图 63

3.9.1 视图定义 64

3.9.2 用其他视图定义视图 65

3.10.1 删除 66

3.10 数据库的修改 66

3.10.2 插入 67

3.10.3 更新 68

3.10.4 视图的更新 69

3.10.5 事务 70

3.11.1 举例 71

3.11 连接关系 71

3.11.2 连接类型和条件 72

术语回顾 74

3.12 小结 74

实践习题 75

习题 76

文献注解 77

4.1.1 SQL中内建的数据类型 79

4.1 SQL的数据类型与模式 79

第4章 高级SQL 79

4.1.2 用户定义类型 80

4.1.4 模式、目录与环境 81

4.1.3 大对象类型 81

4.2.2 not null约束 82

4.2.1 单个关系上的约束 82

4.2 完整性约束 82

4.2.4 check子句 83

4.2.3 unique约束 83

4.2.5 参照完整性 84

4.3 授权 86

4.2.6 断言 86

4.4 嵌入式SQL 87

4.5.1 ODBC 90

4.5 动态SQL 90

4.5.2 JDBC 92

4.6.1 SQL函数和过程 95

4.6 函数和过程化结构 95

4.6.2 过程化结构 96

4.6.3 外部语言例程 98

4.7.1 使用迭代的传递闭包 99

4.7 递归查询 99

4.7.2 SQL中的递归 100

4.8 高级SQL特性 101

4.8.2 关于子查询的更多内容 102

4.8.1 create table的扩展 102

4.9 小结 103

4.8.3 数据库更新的高级结构 103

实践习题 104

术语回顾 104

习题 105

文献注解 106

5.1.1 查询的例子 107

5.1 元组关系演算 107

第5章 其他关系语言 107

5.1.3 表达式的安全性 109

5.1.2 形式化定义 109

5.2.1 形式化定义 110

5.2 域关系演算 110

5.1.4 语言的表达能力 110

5.2.3 表达式的安全性 111

5.2.2 查询的例子 111

5.3 QBE 112

5.2.4 语言的表达能力 112

5.3.2 在单个关系上的查询 113

5.3.1 框架表 113

5.3.3 在多个关系上的查询 114

5.3.4 条件框 115

5.3.5 结果关系 116

5.3.6 在Microsoft Access中的QBE 117

5.4 Datalog 118

5.4.1 基本结构 119

5.4.2 Datalog规则的语法 120

5.4.3 非递归Datalog的语义 121

5.4.4 安全性 122

5.4.5 Datalog的关系运算 123

5.4.6 Datalog中的递归 124

5.4.7 递归的能力 125

实践习题 127

术语回顾 127

5.5 小结 127

习题 128

文献注解 129

6.1.1 设计阶段 132

6.1 设计过程概览 132

第二部分 数据库设计 132

第6章 数据库设计和E-R模型 132

6.2 实体-联系模型 133

6.1.2 设计选择 133

6.2.1 实体集 134

6.2.2 联系集 135

6.2.3 属性 137

6.3.1 映射基数 138

6.3 约束 138

6.3.2 码 139

6.4 实体-联系图 140

6.3.3 参与约束 140

6.5.1 用实体集还是用属性 144

6.5 实体-联系设计问题 144

6.5.2 用实体集还是用联系集 145

6.5.3 二元联系集与n元联系集 146

6.6 弱实体集 147

6.5.4 联系属性的布局 147

6.7.1 特殊化 149

6.7 扩展E-R特性 149

6.7.2 一般化 150

6.7.4 一般化上的约束 151

6.7.3 属性继承 151

6.7.5 聚集 153

6.7.6 可选择的E-R符号 154

6.8.1 E-R设计的可选方案 155

6.8 银行企业的数据库设计 155

6.8.4 银行数据库中的联系集 156

6.8.3 银行数据库中的实体集 156

6.8.2 银行数据库的数据需求 156

6.8.5 银行数据库中的E-R图 157

6.9.2 弱实体集的表示方式 158

6.9.1 强实体集的表示方式 158

6.9 转换为关系模式 158

6.9.3 联系集的表示方式 159

6.9.4 复合属性和多值属性 160

6.9.6 聚集的表示方式 161

6.9.5 一般化的表示方式 161

6.10.1 数据约束和关系数据库设计 162

6.10 数据库设计的其他方面 162

6.9.7 银行企业的关系模式 162

6.10.3 授权需求 163

6.10.2 使用需求:查询和性能 163

6.11 统一建模语言UML 164

6.10.5 数据库设计的其他问题 164

6.10.4 数据流、工作流 164

6.12 小结 166

实践习题 167

术语回顾 167

习题 169

文献注解 170

7.1.1 设计选择:更大的模式 172

7.1 好的关系设计的特点 172

第7章 关系数据库设计 172

7.1.2 设计选择:更小的模式 174

7.3 使用函数依赖的分解 176

7.2 原子域和第一范式 176

7.3.1 码和函数依赖 177

7.3.3 BCNF和保持依赖 178

7.3.2 Boyce-Codd范式 178

7.3.4 第三范式 180

7.4.1 函数依赖集的闭包 182

7.4 函数依赖理论 182

7.3.5 更高的范式 182

7.4.2 属性集的闭包 184

7.4.3 正则覆盖 185

7.4.4 无损分解 187

7.4.5 保持依赖 188

7.5.1 BCNF分解 189

7.5 分解的算法 189

7.5.2 3NF分解 191

7.5.3 BCNF和3NF的比较 192

7.6.1 多值依赖 193

7.6 使用多值依赖的分解 193

7.6.2 第四范式 194

7.6.3 4NF分解 195

7.8.1 E-R模型和规范化 196

7.8 数据库设计过程 196

7.7 更多的范式 196

7.8.2 属性和联系的命名 197

7.9 时态数据建模 198

7.8.4 其他设计问题 198

7.8.3 为了性能解除规范化 198

7.10 小结 200

实践习题 201

术语回顾 201

文献注解 203

习题 203

8.1.1 表格和图形用户界面 205

8.1 用户界面和工具 205

第8章 应用设计和开发 205

8.1.2 报表生成器 206

8.2 数据库的Web界面 207

8.3.2 超文本标记语言 208

8.3.1 统一资源定位符 208

8.3 Web基础 208

8.3.3 客户端脚本和applet 209

8.3.4 Web服务器和会话 210

8.4.1 一个servlet的例子 212

8.4 servlet和JSP 212

8.4.4 servlet支持 213

8.4.3 servlet的生命周期 213

8.4.2 servlet会话 213

8.4.5 服务器端脚本 214

8.5.2 Microsoft ASP 215

8.5.1 构建Web界面 215

8.5 建立大型Web应用 215

8.5.3 提高应用程序性能 216

8.6.1 对触发器的需求 217

8.6 触发器 217

8.6.2 SQL中的触发器 218

8.6.3 何时不用触发器 220

8.7.1 权限的授予 221

8.7 SQL中的授权 221

8.7.2 在SQL中授权 222

8.7.3 角色 223

8.7.4 收回权限 224

8.7.6 SQL授权的局限 225

8.7.5 视图、函数和过程的授权 225

8.8.1 加密技术 226

8.8 应用系统安全性 226

8.7.7 审计追踪 226

8.8.2 数据库中的加密支持 227

8.8.3 鉴定 228

8.8.5 隐私 230

8.8.4 保护应用程序 230

8.9 小结 231

实践习题 232

术语回顾 232

习题 233

项目建议 234

文献注解 235

9.2 复杂数据类型 238

9.1 概述 238

第三部分 基于对象的数据库和XML第9章 基于对象的数据库 238

9.3.1 结构类型 240

9.3 SQL中的结构类型和继承 240

9.3.2 类型继承 242

9.4 表继承 243

9.5 SQL中的数组和多重集合类型 244

9.5.2 查询以集合体为值的属性 245

9.5.1 创建和访问集合体值 245

9.5.3 嵌套和解除嵌套 246

9.6 对象标识和SQL中的引用类型 248

9.7 Q-R特性的实现 249

9.8 持久化程序设计语言 250

9.8.2 对象标识和指针 251

9.8.1 对象的持久化 251

9.8.4 持久化C++系统 252

9.8.3 持久对象的存储和访问 252

9.8.5 持久化Java系统 254

9.9 面向对象与对象-关系 255

9.10 小结 256

术语回顾 256

实践习题 257

习题 258

文献注解 259

10.1 动机 261

第10章 XML 261

10.2 XML数据的结构 263

10.3 XML文档模式 265

10.3.1 文档类型定义 266

10.3.2 XMLSchema 268

10.4.1 XPath 270

10.4 查询和转换 270

10.4.2 XQuery 272

10.4.3 XSLT 276

10.5 XML应用程序接口 278

10.6.2 关系数据库 279

10.6.1 非关系的数据存储 279

10.6 XML数据的存储 279

10.6.3 SQL/XML 281

10.7.2 标准化数据交换格式 283

10.7.1 存储复杂结构的数据 283

10.7 XML应用 283

10.7.3 Web服务 284

10.8 小结 285

10.7.4 数据中介 285

术语回顾 286

习题 287

实践习题 287

文献注解 288

11.1 物理存储介质概述 292

第11章 存储和文件结构 292

第四部分 数据存储和查询 292

11.2.1 磁盘的物理特性 294

11.2 磁盘 294

11.2.2 磁盘性能的度量 295

11.2.3 磁盘块访问的优化 296

11.3.1 通过冗余提高可靠性 298

11.3 RAID 298

11.3.2 通过并行提高性能 299

11.3.3 RAID级别 300

11.3.4 RAID级别的选择 302

11.3.6 其他的RAID应用 303

11.3.5 硬件问题 303

11.4.2 磁带 304

11.4.1 光盘 304

11.4 第三级存储 304

11.5.1 缓冲区管理器 305

11.5 存储访问 305

11.5.2 缓冲区替换策略 306

11.6 文件组织 307

11.6.1 定长记录 308

11.6.2 变长记录 309

11.7.1 顺序文件组织 310

11.7 文件中记录的组织 310

11.7.2 多表聚类文件组织 311

11.8 数据字典存储 312

11.9 小结 313

术语回顾 314

实践习题 315

文献注解 316

习题 316

12.1 基本概念 318

第12章 索引与散列 318

12.2.1 稠密索引和稀疏索引 319

12.2 顺序索引 319

12.2.2 多级索引 320

12.2.3 索引的更新 321

12.2.4 辅助索引 322

12.3.1 B+树的结构 323

12.3 B+树索引文件 323

12.3.2 B+树的查询 325

12.3.3 B+树的更新 326

12.3.4 B+树文件组织 330

12.4 B树索引文件 331

12.3.5 字符串上的索引 331

12.5 多码访问 332

12.5.2 多码索引 333

12.5.1 使用多个单码索引 333

12.5.5 辅助索引和记录重定位 334

12.5.4 覆盖索引 334

12.5.3 不唯一的搜索码 334

12.6.1 散列函数 335

12.6 静态散列 335

12.6.2 桶溢出处理 337

12.6.3 散列索引 338

12.7.1 数据结构 339

12.7 动态散列 339

12.7.2 查询和更新 340

12.8 顺序索引和散列的比较 343

12.7.3 静态散列与动态散列比较 343

12.9.1 位图索引结构 344

12.9 位图索引 344

12.9.2 位图操作的有效实现 345

12.10 SQL 中的索引定义 346

12.9.3 位图和B+树 346

12.11 小结 347

实践习题 348

术语回顾 348

文献注解 350

习题 350

13.1 概述 352

第13章 查询处理 352

13.2 查询代价的度量 353

13.3.1 基本算法 354

13.3 选择运算 354

13.3.2 利用索引的选择 355

13.3.4 复杂选择的实现 356

13.3.3 涉及比较的选择 356

13.4 排序 357

13.5 连接运算 359

13.5.2 块嵌套循环连接 360

13.5.1 嵌套循环连接 360

13.5.3 索引嵌套循环连接 361

13.5.4 归并连接 362

13.5.5 散列连接 364

13.6.2 投影 368

13.6.1 去除重复 368

13.5.6 复杂连接 368

13.6 其他运算 368

13.6.4 外连接 369

13.6.3 集合运算 369

13.7.1 实体化 370

13.7 表达式计算 370

13.6.5 聚集 370

13.7.2 流水线 371

术语回顾 374

13.8 小结 374

实践习题 375

文献注解 376

习题 376

14.1 概述 378

第14章 查询优化 378

14.2.1 等价规则 379

14.2 关系表达式的转换 379

14.2.2 转换的例子 381

14.2.3 连接的次序 382

14.2.4 等价表达式的枚举 383

14.3.1 目录信息 384

14.3 表达式结果集统计大小的估计 384

14.3.2 选择运算结果大小的估计 385

14.3.3 连接运算结果大小的估计 386

14.3.4 其他运算的结果集大小的估计 387

14.4.1 查询执行技术的相互作用 388

14.4 选择执行计划 388

14.3.5 不同取值个数的估计 388

14.4.2 基于代价的优化 389

14.4.3 启发式优化 391

14.4.4 嵌套子查询的优化 393

14.5.1 视图维护 394

14.5 物化视图 394

14.5.2 增量的视图维护 395

14.6 小结 397

14.5.3 查询优化和物化视图 397

术语回顾 398

实践习题 399

文献注解 400

习题 400

15.1 事务概念 404

第15章 事务 404

第五部分 事务管理 404

15.2 事务状态 406

15.3 原子性和持久性的实现 407

15.4 并发执行 408

15.5.1 冲突可串行化 411

15.5 可串行化 411

15.6 可恢复性 413

15.5.2 视图可串行化 413

15.7 隔离性的实现 414

15.6.2 无级联调度 414

15.6.1 可恢复调度 414

15.8 可串行化判定 415

15.9 小结 416

习题 417

实践习题 417

术语回顾 417

文献注解 418

16.1.1 锁 419

16.1 基于锁的协议 419

第16章 并发控制 419

16.1.2 锁的授予 421

16.1.3 两阶段封锁协议 422

16.1.4 封锁的实现 423

16.1.5 基于图的协议 424

16.2.2 时间戳排序协议 426

16.2.1 时间戳 426

16.2 基于时间戳的协议 426

16.2.3 Thomas写规则 427

16.3 基于有效性检查的协议 428

16.4 多粒度 429

16.5.1 多版本时间戳排序 431

16.5 多版本机制 431

16.5.2 多版本两阶段封锁 432

16.6.1 死锁预防 433

16.6 死锁处理 433

16.6.3 死锁检测与恢复 434

16.6.2 基于超时的机制 434

16.7.2 插入 436

16.7.1 删除 436

16.7 插入与删除操作 436

16.7.3 幻象现象 437

16.8.2 游标稳定性 438

16.8.1 二级一致性 438

168 弱一致性级别 438

16.9 索引结构中的并发 439

16.8.3 SQL中的弱一致性级别 439

16.10 小结 441

实践习题 443

术语回顾 443

习题 445

文献注解 446

17.2.1 存储器类型 447

17.2 存储器结构 447

第17章 恢复系统 447

17.1 故障分类 447

17.2.2 稳定存储器的实现 448

17.2.3 数据访问 449

17.4 基于日志的恢复 450

17.3 恢复与原子性 450

17.4.1 延迟的数据库修改 451

17.4.2 立即的数据库修改 452

17.4.3 检查点 454

17.5.3 检查点 455

17.5.2 事务回滚 455

17.5 并发事务的恢复 455

17.5.1 与并发控制的交互 455

17.6.1 日志记录缓冲 456

17.6 缓冲区管理 456

17.5.4 重启动恢复 456

17.6.2 数据库缓冲 457

17.7 非易失性存储器数据丢失的故障 458

17.6.3 操作系统在缓冲区管理中的作用 458

17.8.1 逻辑undo日志 459

17.8 高级恢复技术 459

17.8.4 重启动恢复 460

17.8.3 检查点 460

17.8.2 事务回滚 460

17.8.6 ARIES 461

17.8.5 模糊检查点 461

17.9 远程备份系统 464

17.10 小结 465

实践习题 467

术语回顾 467

文献注解 468

习题 468

18.1 决策支持系统 472

第六部分 数据挖掘与信息检索第18章 数据分析与挖掘 472

18.2.1 联机分析处理 473

18.2 数据分析和联机分析处理 473

18.2.2 OLAP实现 476

18.2.3 扩展的聚集 477

18.2.4 排名 478

18.2.5 分窗 480

18.3.1 数据仓库的成分 481

18.3 数据仓库工程 481

18.3.2 数据仓库模式 482

18.4.1 数据挖掘应用 483

18.4 数据挖掘 483

18.4.2 分类 484

18.4.3 关联规则 488

18.4.4 其他类型的关联 489

18.4.5 聚类 490

18.5 小结 491

18.4.6 其他类型的挖掘 491

术语回顾 492

习题 493

实践习题 493

文献注解 494

19.1 概述 496

第19章 信息检索 496

19.2.1 使用TF-IDF方法排级 497

19.2 使用术语的相关排级 497

19.2.2 基于相似性的检索 498

19.3.1 流行度排序 499

19.3 使用超链接的相关性 499

19.3.2 PageRank 500

19.3.3 其他的流行度度量 501

19.4 同义词、多义词和本体 502

19.5 文档的索引 503

19.7 Web搜索引擎 504

19.6 检索的有效性度量 504

19.8.2 查询结构化数据 505

19.8.1 信息抽取 505

19.8 信息检索和结构化数据 505

19.9 目录 506

19.8.3 问题解答 506

19.10 小结 507

术语回顾 508

习题 509

实践习题 509

文献注解 510

20.1 集中式与客户-服务器体系结构 512

20.1.1 集中式系统 512

第七部分 系统体系结构 512

第20章 数据库系统体系结构 512

20.1.2 客户-服务器系统 513

20.2.1 事务服务器进程结构 514

20.2 服务器系统体系结构 514

20.2.2 数据服务器 515

20.3 并行系统 516

20.3.1 加速比和扩展比 517

20.3.2 互连网络 518

20.3.3 并行数据库体系结构 519

20.4 分布式系统 521

20.4.2 实现问题 522

20.4.1 分布式数据库的一个例子 522

20.5.1 局域网 523

20.5 网络类型 523

20.5.2 广域网 524

术语回顾 525

20.6 小结 525

实践习题 526

文献注解 527

习题 527

21.2.1 划分技术 528

21.2 I/O并行 528

第21章 并行数据库 528

21.1 概述 528

21.2.2 划分技术比较 529

21.2.3 偏斜的处理 530

21.4 查询内并行 531

21.3 查询间并行 531

21.5.1 并行排序 532

21.5 操作内并行 532

21.5.2 并行连接 533

21.5.3 其他的关系操作 536

21.6.1 流水线并行 537

21.6 操作间并行 537

21.5.4 操作的并行计算的代价 537

21.6.3 查询优化 538

21.6.2 独立的并行 538

21.7 并行系统设计 539

术语回顾 540

21.8 小结 540

习题 541

实践习题 541

文献注解 542

22.2.1 数据复制 544

22.2 分布式数据存储 544

第22章 分布式数据库 544

22.1 同构和异构数据库 544

22.2.2 数据分片 545

22.2.3 透明性 546

22.3.1 系统结构 547

22.3 分布式事务 547

22.4.1 两阶段提交 548

22.4 提交协议 548

22.3.2 系统故障模式 548

22.4.3 事务处理的可选择模型 551

22.4.2 三阶段提交 551

22.5 分布式数据库的并发控制 552

22.5.1 封锁协议 553

22.5.3 弱一致性复制 555

22.5.2 时间戳 555

22.5.4 死锁处理 556

22.6 可用性 557

22.6.1 基于多数的方法 558

22.6.4 与远程备份比较 559

22.6.3 站点重建 559

22.6.2 读一个、写所有可用的方法 559

22.6.5 协调器的选择 560

22.7.2 简单的连接处理 561

22.7.1 查询转换 561

22.7 分布式查询处理 561

22.7.3 半连接策略 562

22.8.1 数据的统一视图 563

22.8 异构分布式数据库 563

22.7.4 利用并行性的连接策略 563

22.9 目录系统 564

22.8.2 查询处理 564

22.9.2 LDAP:轻便目录访问协议 565

22.9.1 目录访问协议 565

22.10 小结 568

术语回顾 569

实践习题 570

习题 571

文献注解 572

23.1.1 瓶颈的位置 574

23.1 性能调整 574

第八部分 其他主题 574

第23章 高级应用开发 574

23.1.3 硬件的调整 575

23.1.2 可调参数 575

23.1.6 使用物化视图 577

23.1.5 索引的调整 577

23.1.4 模式的调整 577

23.1.7 物理设计的自动调整 578

23.1.8 事务的调整 579

23.2.1 任务集 580

23.2 性能基准程序 580

23.1.9 性能模拟 580

23.2.3 TPC基准程序 581

23.2.2 数据库应用类型 581

23.2.4 OODB基准程序 582

23.3.1 SQL标准 583

23.3 标准化 583

23.3.2 数据库连接标准 584

23.3.4 基于XML的标准 585

23.3.3 对象数据库标准 585

23.5 小结 586

23.4 应用系统移植 586

实践习题 587

术语回顾 587

文献注解 588

习题 588

24.2 数据库中的时间 590

24.1 动机 590

第24章 高级数据类型和新的应用 590

24.2.1 SQL中的时间描述 591

24.3.1 几何信息的表示 592

24.3 空间与地理数据 592

24.2.2 时态查询语言 592

24.3.2 设计数据库 593

24.3.3 地理数据 594

24.3.4 空间查询 595

24.3.5 空间数据的索引 596

24.4.1 多媒体数据格式 599

24.4 多媒体数据库 599

24.4.3 基于相似性的检索 600

24.4.2 连续媒体数据 600

24.5.1 移动计算模型 601

24.5 移动计算和个人数据库 601

24.5.3 广播数据 602

24.5.2 路由和查询处理 602

24.5.4 连接断开与一致性 603

24.6 小结 604

实践习题 605

术语回顾 605

文献注解 606

习题 606

25.1.1 TP监控器体系结构 608

25.1 事务处理监控器 608

第25章 高级事务处理 608

25.1.2 使用TP监视器进行应用协调 610

25.2 事务工作流 611

25.2.1 工作流说明 612

25.2.3 工作流的执行 613

25.2.2 工作流的故障原子性需求 613

25.2.5 工作流管理系统 614

25.2.4 工作流的恢复 614

25.3.1 电子目录 615

25.3 电子商务 615

25.3.3 订单结算 616

25.3.2 市场 616

25.4 主存数据库 617

25.5 实时事务系统 618

25.6.1 不可串行化的执行 619

25.6 长事务 619

25.6.3 嵌套事务和多级事务 620

25.6.2 并发控制 620

25.6.4 补偿事务 621

25.7 多数据库中的事务管理 622

25.6.5 实现问题 622

25.7.1 两级串行化 623

25.7.2 保证全局串行化 624

术语回顾 625

25.8 小结 625

实践习题 626

文献注解 627

习题 627

26.2.1 交互式终端界面 630

26.2 用户界面 630

第九部分 实例研究 630

第26章 PostgreSQL 630

26.1 概述 630

26.2.3 编程语言接口 631

26.2.2 图形界面 631

26.3.1 PostgreSQL类型 633

26.3 SQL变化和扩展 633

26.3.2 规则和其他主动数据库特征 634

26.3.3 可扩展性 636

26.4 PostgreSQL中的事务管理 638

26.4.1 PostgreSQL的并发控制 639

26.5 存储和索引 644

26.4.2 恢复 644

26.5.2 索引 645

26.5.1 表 645

26.6.1 查询重写 646

26.6 查询处理和优化 646

26.6.3 查询执行器 647

26.6.2 查询规划和优化 647

26.7 系统结构 648

26.6.4 触发器和约束 648

文献注解 649

27.1.1 数据库设计工具 650

27.1 数据库设计和查询工具 650

第27章 Oracle 650

27.2.1 对象-关系特性 651

27.2 SQL的变化和扩展 651

27.1.2 查询工具 651

27.3 存储和索引 652

27.2.3 触发器 652

27.2.2 联机分析处理 652

27.3.3 表 653

27.3.2 段 653

27.3.1 表空间 653

27.3.5 索引 654

27.3.4 按索引组织的表 654

27.3.6 位图索引 655

27.3.9 域索引 656

27.3.8 连接索引 656

27.3.7 基于函数的索引 656

27.3.10 划分 657

27.4.1 执行方法 658

27.4 查询处理和优化 658

27.3.11 物化视图 658

27.4.2 优化 659

27.4.4 并行执行 661

27.4.3 SQL调优顾问 661

27.5.1 并发控制 662

27.5 并发控制与恢复 662

27.5.2 恢复的基本结构 663

27.6.1 专用服务器:内存结构 664

27.6 系统体系结构 664

27.5.3 Oracle数据卫士 664

27.6.4 Oracle Real Application Clusters 665

27.6.3 共享服务器 665

27.6.2 专用服务器:进程结构 665

27.7.3 外部数据源 666

27.7.2 分布式数据库 666

27.7 复制、分布以及外部数据 666

27.7.1 复制 666

27.9 数据挖掘 667

27.8.3 Oracle Enterprise Manager 667

27.8 数据库管理工具 667

27.8.1 Automatic Workload Repository 667

27.8.2 数据库资源管理 667

文献注解 668

28.1 概述 669

第28章 IBM DB2 Universal Database 669

28.3.1 XML特性 670

28.3 SQL的变化和扩展 670

28.2 数据库设计工具 670

28.3.2 数据类型的支持 671

28.3.6 Web服务 672

28.3.5 索引扩展和约束 672

28.3.3 用户自定义函数和方法 672

28.3.4 大对象 672

28.4.1 存储体系结构 673

28.4 存储和索引 673

28.3.7 消息队列 673

28.4.3 表、记录和索引 674

28.4.2 缓冲池 674

28.5 多维聚类 675

28.5.1 块索引 676

28.6 查询处理和优化 677

28.5.4 对现有技术的影响 677

28.5.2 块映射 677

28.5.3 设计考虑 677

28.6.1 存取方法 678

28.6.5 查询优化 679

28.6.4 多处理器查询处理特性 679

28.6.2 连接、聚集和集合操作 679

28.6.3 对复杂SQL处理的支持 679

28.7.2 MQT的维护 680

28.7.1 发送查询到MQT 680

28.7 物化的查询表 680

28.8.2 优化 681

28.8.1 配置 681

28.8 DB2中的自治特性 681

28.9 工具和实用程序 682

28.10.2 提交和回滚 683

28.10.1 并发与隔离 683

28.10 并发控制和恢复 683

28.11 系统体系结构 684

28.10.3 日志和恢复 684

28.12 复制、分布和外部数据 685

文献注解 686

28.13 商务智能特性 686

29.1.2 数据库查询和调整工具 687

29.1.1 数据库开发和可视化数据库工具 687

第29章 Microsoft SQL Server 687

29.1 管理、设计和查询工具 687

29.1.3 SQL Server Management Studio 690

29.2.2 查询语言增强 691

29.2.1 数据类型 691

29.2 SQL的变体和扩展 691

29.2.3 例程 692

29.3.2 文件组中的空间管理 693

29.3.1 文件组 693

29.3 存储和索引 693

29.3.7 扫描和预读 694

29.3.6 在线创建索引 694

29.3.3 表 694

29.3.4 索引 694

29.3.5 分区 694

29.4.2 查询简化 695

29.4.1 优化处理概述 695

29.4 查询处理及优化 695

29.4.4 更新计划 696

29.4.3 重排序和基于代价的优化 696

29.4.7 查询执行 697

29.4.6 部分搜索和启发式搜索 697

29.4.5 优化时的数据分析 697

29.5.2 封锁 698

29.5.1 事务 698

29.5 并发与恢复 698

29.5.3 恢复和可用性 699

29.6 系统体系结构 700

29.6.3 安全 701

29.6.2 内存管理 701

29.6.1 服务器的线程池 701

29.8 分布式异构查询处理 702

29.7 数据访问 702

29.9.2 复制选项 703

29.9.1 复制模型 703

29.9 复制 703

29.10.1 .NET基本概念 704

29.10 .NET 中的服务器编程 704

29.10.2 SQLCLR宿主 705

29.10.3 可扩展性协定 706

29.11 SQL Server2005中对XML的支持 707

29.11.3 查询和更新XML数据类型 708

29.11.2 验证和标定XML数据类型 708

29.11.1 本地存储和组织XML 708

29.12 SQL Server服务代理 710

29.11.4 XQuery表达式的执行 710

29.13.1 SQL Server集成服务 712

29.13 数据仓库和商务智能 712

29.13.2 SQL Server分析服务 713

文献注解 714

29.13.3 SQL Server报表服务 714

参考文献 716

索引 742