第一篇 基础篇 2
第一章 数据库系统概述 2
第一节 数据库、数据库管理系统和数据库系统 2
第二节 数据库系统的特点与功能 3
一、信息完整、功能通用 4
二、程序与数据独立 5
三、数据抽象 5
四、支持数据的不同视图 5
五、控制数据冗余 6
六支持数据共享 6
七、限制非授权的存取 6
八、提供多种用户界面 7
九、表示数据之间的复杂联系 7
十、完整性约束 7
十一、数据恢复 8
第三节 数据库系统的用户 8
一、数据库管理员 8
二、数据库设计者 8
三、最终用户 8
四、系统分析员和应用程序员 9
五、与数据库系统有关的其他人员 9
第四节 数据抽象 9
一、数据抽象与数据库的三种模式 9
二、数据独立性 10
第五节 数据模型 11
一、基于对象的数据模型 11
二、基于记录的数据模型 13
三、物理数据模式 14
四、数据库模式和实例 14
第六节 数据库语言 15
第七节 数据库管理系统的结构 15
第八节 数据库技术的发展 17
一、第一代数据库系统 17
二、第二代数据库系统 17
三、第三代数据库系统 18
习题一 18
参考文献注释 19
参考文献 19
第二章 关系数据库系统 20
第一节 关系数据模型 20
一、数据结构 20
二、完整性约束规则 22
第二节 关系运算 23
一、关系代数 23
二、元组关系演算 26
三、域关系演算 26
第三节 关系运算的安全性 27
第四节 关系代数、元组演算、域演算的等价性 29
第五节 关系数据库查询语言 32
一、ISBL语言 32
二、QUEL语言 33
三、QBE语言 37
四、SQL语言 41
习题二 47
参考文献注释 48
参考文献 49
第三章 层次与网状数据库系统 50
第一节 层次数据库系统 50
一、层次数据模型 50
二、IMS概述 53
三、IMS的数据定义 54
四、IMS的数据操作 58
五、IMS的存储结构 61
第二节 网状数据库系统 63
一、网状数据模型 63
二、DBTG系统 68
三、模式定义语言 69
四、子模式定义语言 74
五、DBTG的数据操纵语言 76
习题三 82
参考文献注释 82
参考文献 83
第四章 数据库的安全性与完整性 84
第一节 安全性 84
一、数据库安全性与数据库管理员 85
二、系统保护机制 85
三、授权机制 85
四、统计数据库的安全性 87
第二节 完整性 88
一、完整性约束的类型 88
二、显式约束的定义 90
三、完整性约束的验证 91
习题四 92
参考文献注释 92
参考文献 92
第二篇 设计篇 95
第五章 数据库设计概述与需求分析 95
第一节 数据库设计概述 95
一、数据库设计问题 95
二、数据库的生命周期 95
三、数据库设计过程 96
第二节 需求分析 96
一、应用领域的调查分析 97
二、定义数据库系统支持的信息与应用 97
三、定义数据库操作任务 98
四、定义数据项 99
五、预测现行系统的未来改变 100
习题五 100
参考文献注释 101
参考文献 101
第六章 概念数据库设计 102
第一节 概述 102
第二节 实体联系模型 102
一、实体和属性 102
二、实体型、键属性和属性的值域 103
三、数据库实例 104
四、实体间的联系 104
五、弱实体 106
六、实体联系图 107
第三节 扩展的实体联系模型 108
一、子类、超类、演绎和归纳 108
二、演绎和归纳的性质 109
三、范畴与范畴化 111
四、EER图 111
第四节 概念设计的方法与策略 112
一、概念设计的方法 112
二、概念设计的策略 112
第五节 视图综合设计方法 113
一、局部概念模式设计 114
二、全局概念模式合成 114
第六节 事务的设计 115
习题六 115
参考文献注释 116
参考文献 116
第七章 逻辑数据库设计 118
第一节 形成初始关系数据库模式 118
第二节 关系数据库设计理论 121
一、问题的提出 121
二、函数依赖 122
三、数据依赖的公理系统 123
四、关系模式的规范形式 126
五、多值依赖与第四范式 128
六、连接依赖和第五范式 131
第三节 关系模式规范化方法 132
一、无损连接性和函数依赖保持性 132
二、关系模式分解算法 136
第四节 关系模式的优化 139
第五节 完整性和安全性约束的定义 140
第六节 逻辑数据库的性能估计 140
习题七 141
参考文献注释 142
参考文献 143
第八章 物理数据库设计 144
第一节 影响物理数据库设计的因素 144
第二节 为关系模式选择存取方法 145
一、索引存取方法的选择 145
二、HASH存取方法的选择 145
三、聚集存取方法的选择 146
第三节 物理存储结构的设计 146
习题八 148
参考文献注释 148
参考文献 149
第三篇 实现篇 151
第九章 物理存储结构 151
第一节 数据库存储设备 151
一、磁盘存储器 151
二、磁带存储器 152
三、磁盘缓冲处理技术 153
四、磁盘的调度策略 153
第二节 文件和文件记录 154
第三节 无序文件 156
第四节 有序文件 156
第五节 HASH文件 157
一、简单HASH方法 157
二、动态HASH方法 159
三、可扩展的HASH方法 160
第六节 索引文件 161
一、主索引 162
二、聚集索引 163
三、辅助索引 164
四、多级索引 166
第七节 B_树与B_+树索引结构 167
一、索引树结构 167
二、B_树索引结构 168
三、B_+树索引结构 170
习题九 175
参考文献注释 175
参考文献 176
第十章 数据库管理系统的数据字典 177
第一节 关系数据库管理系统的数据字典 177
第二节 数据库管理系统软件模块对数据字典的存取 177
习题十 178
第十一章 关系代数操作的实现算法 179
第一节 查询处理的过程 179
第二节 选择操作的实现算法 180
第三节 笛卡尔乘积的实现算法 181
第四节 连接操作的实现算法 183
一、连接操作结果的估计 183
二、连接操作实现算法 184
第五节 投影操作的实现算法 187
第六节 集合的并、交、差实现算法 187
习题十一 189
参考文献注释 189
参考文献 189
第十二章 查询优化技术 191
第一节 问题的提出 191
第二节 启发式关系代数优化方法 192
一、关系代数等价变换规则 192
二、启发式代数优化规则 194
三、启发式代数优化算法 194
第三节 启发式关系演算优化方法 198
一、多重自然连接的优化处理 198
二、查询的超图表示 199
三、超图消解算法 200
第四节 基于复杂性估计的查询优化方法 208
第五节 语义查询优化方法 210
习题十二 211
参考文献注释 212
参考文献 212
第十三章 事务处理技术之一:并发控制技术 214
第一节 并发控制的必要性 214
一、单用户和多用户数据库系统 214
二、并发控制的必要性 214
第二节 事务模型 216
一、事务中的读写操作 216
二、事务的原子性 216
三、事务的状态 217
四、事务的性质 218
第三节 事务调度与可串行性 218
一、事务的调度 219
二、调度的可串行性 220
三、调度的可串行性测试 223
第四节 基于锁的并发控制协议 227
一、锁的概念 227
二、两段锁协议 229
三、数据库图协议 230
第五节 时间印协议 232
第六节 其他并发控制技术 233
一、实现并发控制的验证技术 233
二、多版本并发控制技术 234
三、多种并发控制粒度 235
第七节 插入和删除操作 237
一、删除操作对并发控制的影响 237
二、插入操作对并发控制的影响 237
三、插入元组现象 237
习题十三 238
参考文献注释 239
参考文献 239
第十四章 事务处理技术之二:数据库恢复技术 241
第一节 数据库恢复的必要性 241
第二节 使用日志的数据库恢复技术 242
一、数据库系统日志 242
二、推迟更新技术 243
三、即时更新技术 245
第三节 缓冲技术 247
一、日志缓冲技术 247
二、数据库缓冲技术 247
第四节 检测点 248
第五节 影子页面技术 249
第六节 永久存储器中信息丢失后的数据库恢复 250
第七节 数据库恢复与并发控制技术的结合 250
一、事务的嵌套撤消 251
二、调度的可恢复性 251
习题十四 252
参考文献注释 252
参考文献 252
第十五章 其他事务处理技术 254
第一节 死锁处理 254
一、预防死锁协议 254
二、死锁的检测和恢复技术 255
第二节 高性能事务处理系统 256
一、主存数据库 256
二、事务的成批提交技术 256
第三节 长事务处理技术 257
一、可串行性概念不适于长事务处理 257
二、嵌套事务技术 258
三、补救事务技术 258
四、实时数据库系统 259
习题十五 259
参考文献注释 259
参考文献 259
第四篇 新技术篇 262
第十六章 数据库技术进展和新一代数据库应用 262
第一节 数据库技术的进展 262
一、数据模型 262
二、支持数据库系统的硬件环境 263
三、用户界面 264
四、程序界面 264
五、输出与显示 265
六、处理能力 266
第二节 新一代数据库应用 266
一、工程设计与制造 266
二、办公自动化系统 268
三、决策支持系统 269
四、科学与统计数据管理 270
五、异构多数据库应用 270
六、人工智能应用 271
七、其他新一代数据库应用 273
第三节 新一代数据库系统的特点和需要研究的问题 277
一、新的数据类型 277
二、规则处理 277
三、数据模型中的新概念 278
四、数据库管理系统的升级 278
五、并行化 279
六、第三级存储器 279
七、长事务处理 279
八、版本与格局 279
九、异构多数据库互操作技术 280
第四节 新一代数据库系统 280
参考文献注释 280
参考文献 281
第十七章 扩展的关系数据库系统 282
第一节 基于逻辑的关系数据库系统 282
一、逻辑数据模型 282
二、查询的计算策略 284
三、查询结构 285
四、否定 286
五、非递归查询 287
六、递归查询 289
第二节 基于嵌套关系模型的关系数据库系统 290
一、文档检索实例 291
二、嵌套关系模式的定义 292
三、嵌套关系查询语言 293
第三节 专家数据库系统 296
参考文献注释 296
参考文献 296
第十八章 分布式数据库系统 298
第一节 概述 298
一、计算机网络 298
二、分布式数据库和分布式数据库系统 299
三、分布式数据库的结构 301
第二节 分布式数据库设计 302
一、数据的重复存储 302
二、数据的分片存储 302
三、数据的组合存储 305
四、命名和局部自治性 305
第三节 分布式数据库查询处理 305
一、分布式数据库管理系统概述 305
二、分布式查询处理 306
第四节 分布式数据库系统的事务处理 309
一、分布式事务管理器的结构 309
二、分布式系统恢复技术 310
三、分布式并发控制技术 315
四、分布式死锁处理技术 317
参考文献注释 319
参考文献 319
第十九章 面向对象的数据库系统 321
第一节 面向对象程序设计方法 321
第二节 面向对象数据模型 322
一、对象的结构 322
二、类和类层次 322
三、多重继承性 324
四、对象的标识 325
五、对象的嵌套 326
第三节 面向对象数据库的物理组织 327
第四节 面向对象数据库的查询 327
第五节 面向对象数据库模式的修改 328
参考文献注释 329
参考文献 329
第二十章 并行数据库技术 331
第一节 支持并行数据库的并行结构 331
第二节 关系数据库系统的固有并行性 333
第三节 实现关系查询半行化的数据流方法 334
第四节 并行数据库的物理组织 336
一、一维数据划分 336
二、多维数据划分方法 338
三、传统物理存储结构的并行化 340
第五节 新的并行数据操作算法 341
一、基于嵌套循环的并行连接算法 341
二、基于SORT_MERGE的并行连接算法 342
三、基于HASH的并行连接算法 342
四、数据分布的均匀性与并行连接算法 343
五、数据的初始划分与并行连接算法 344
第六节 查询优化技术 345
一、基于左线性树的查询优化算法 345
二、基于右线性树的查询优化算法 347
三、基于片段式右线性树的查询优化算法 348
四、基于浓密树的查询优化算法 348
五、基于操作森林的查询优化算法 349
参考文献注释 350
参考文献 350
第二十一章 科学与统计数据库系统 352
第一节 数据模型 352
一、MICSUM的语义描述机构 353
二、复杂数据类型 355
三、数据库模式 355
四、数据库模式的实现 356
第二节 SSDB上的代数操作 358
一、C_关系和原子统计表上的代数操作 359
二、复合统计表上的代数操作 363
第三节 SSDB的数据操纵语言 365
一、数据维护 366
二、数据查询 366
三、复杂统计分析操作 369
四、赋值语句 370
参考文献注释 370
参考文献 371