第一章 数据库和数据库系统 1
1.1 数据及其管理 1
1.1.1 数据和数据管理 1
1.1.2 计算机数据管理方法的演变过程 3
1.2 数据单位 5
1.2.1 实体和属性 5
1.2.2 数据单位 5
1.3 数据库 7
1.4 数据库管理系统 9
1.5 数据库系统 9
1.5.1 数据库系统 9
1.5.2 数据库系统的体系结构 11
1.5.3 数据库系统的特征 14
1.6 数据描述语言和数据操作语言 16
1.7 数据字典 17
1.8 访问数据库数据的过程 18
习题 20
第二章 物理数据组织 21
2.1 文件结构概述 22
2.2 顺序文件 24
2.3 索引文件 26
2.3.1 索引顺序文件 26
2.3.2 索引非顺序文件 28
2.4 散列文件 29
2.4.1 散列算法 30
2.4.2 溢出处理技术 31
2.4.3 散列文件的设计 34
2.5 倒排文件 37
2.6 B树和B+树 41
2.6.1 B树 41
2.6.2 B+树 44
习题 45
第三章 数据模型 46
3.1 网状数据模型 47
3.1.1 网状数据模型 47
3.1.2 网状的实现 47
3.2 层次数据模型 50
3.2.1 层次数据模型 50
3.2.2 由网状模型到层次模型的转换 51
3.2.3 层次数据库的实现 52
3.3 关系数据模型 54
3.3.1 关系数据模型 54
3.3.2 实体型和关系模式 55
3.3.3 对关系数据库的操作 56
第四章 DBTG系统的基本概念和方法 59
4.1 DBTG的体系结构 60
4.1.1 DBTG的数据模型 60
4.1.2 DBTG系统的体系结构 60
4.2 DBTG的系 62
4.2.1 系型与系值 62
4.2.2 奇异系 65
4.2.3 DBTG系的种类 66
4.2.4 系结构的一些例子 67
4.3 非DBTG模型向DBTG模型转换 68
4.3.1 同一个记录型的记录值之间具有层次联系的情况 69
4.3.2 两个记录型之间多对多联系情况 70
4.3.3 一个记录型之中记录值之间存在多对多联系情况 72
4.4 系序 73
4.5 域 数据库码 77
4.5.1 域 77
4.5.2 数据库码 78
4.6 成员籍类别 79
4.7 系值选择 81
4.8 模式和模式数据描述语言 83
4.8.1 模式的结构 83
4.8.2 一个模式的例子 84
4.9 子模式和子模式数据描述语言 88
4.9.1 子模式和模式的关系 88
4.9.2 一个子模式的例子 89
4.10 记录的存放方式 91
4.11 当前状态指示器 92
4.12 数据操作语言 94
习题 100
第五章 VAX-11 DBMS 102
5.1 引言 102
5.2 模式定义 104
5.3 子模式定义 109
5.4 存贮模式定义 114
5.5 数据操作语言 117
习题 120
第六章 层次模型数据库系统IMS 122
6.1 IMS的数据模型和体系结构 122
6.1.1 数据模型和一些基本概念 122
6.1.2 IMS的体系结构 123
6.2 物理数据库 124
6.2.1 物理数据库 124
6.2.2 物理数据库描述 126
6.3 IMS的存贮结构 129
6.3.1 层次序列 129
6.3.2 指针 130
6.3.3 IMS的存贮方法概述 131
6.3.4 HSAM 132
6.3.5 HISAM 132
6.3.6 HDAM 134
6.3.7 HIDAM 137
6.4 PCB和PSB 138
6.4.1 逻辑数据库 138
6.4.2 PCB和PSB 140
6.5 IMS的数据操作 141
6.5.1 DL/I操作 141
6.5.2 应用程序和程序通讯区 144
6.6 逻辑数据库 146
6.6.1 逻辑数据库 146
6.6.2 双向逻辑关系 150
6.6.3 逻辑数据库描述 151
习题 153
第七章 关系数据库 154
7.1 引言 154
7.2 关系和关系模式 156
7.2.1 笛卡尔积 156
7.2.2 关系 157
7.2.3 关系模式 159
7.2.4 关键字 161
7.3 关系模型及其描述 162
7.3.1 关系模型 162
7.3.2 关系数据库 163
7.3.3 关系模型的描述 164
7.4 SYSTEM R中的数据定义 165
7.4.1 SYSTEM R概述 165
7.4.2 基本表 167
7.4.3 索引 168
7.4.4 VIEW 169
7.5 关系数据语言概述 171
7.6 关系代数 172
7.6.1 基本运算 173
7.6.2 其它运算 176
7.7 关系演算 179
7.7.1 元组关系演算 180
7.7.2 域关系演算 183
7.7.3 关系运算的安全性限制和三种运算的等价性 184
7.8 SQL 185
7.9 QBE 191
7.10 QUEL 197
7.11 存贮管理与存取路径结构 201
7.11.1 存贮管理 201
7.11.2 存取路径结构 203
习题 206
第八章 关系数据库设计理论 209
8.1 问题的提出 210
8.2 函数依赖性 213
8.2.1 函数依赖 213
8.2.2 函数依赖的逻辑蕴涵 215
8.2.3 关键字 217
8.3 函数依赖的公理系统 218
8.3.1 ARMSTRONG公理 218
8.3.2 公理的完备性 220
8.3.3 闭包的计算 223
8.3.4 函数依赖集的覆盖 226
8.4 关系模式的分解 229
8.4.1 无损联接分解 229
8.4.2 保持依赖分解 236
8.5 关系模式的规范化 239
8.5.1 第一范式和第二范式 239
8.5.2 第三范式 242
8.5.3 BOYCE-CODD范式 244
8.5.4 结果为3NF的分解 245
8.5.5 结果为BCNF的分解 248
8.6 多值依赖性 251
8.6.1 多值依赖定义 251
8.6.2 函数依赖和多值依赖公理 252
8.6.3 第四范式 253
8.7 关系模式规范化小结 254
习题 256
第九章 安全性 完整性 并发控制 恢复 258
9.1 引言 258
9.2 安全性 259
9.3 完整性 263
9.4 并发控制 266
9.4.1 并发控制概述 266
9.4.2 活锁和死锁 268
9.4.3 调度 协议 可串行性 271
9.4.4 可串行化检验 273
9.4.5 读锁与写锁 277
9.5 恢复 278
习题 282
第十章 数据库设计 284
10.1 数据库设计 285
10.2 设计要求 286
10.3 数据库系统的生命周期 287
10.4 数据库的设计过程 288
10.5 需求描述和分析 292
10.6 E-R模型 294
10.7 概念设计 297
10.8 实现设计 299
10.9 物理设计 302
习题 304