第1章 数据库系统引论 1
1.1数据管理技术的发展 1
人工管理阶段 1
文件系统阶段 2
数据库系统阶段 3
1.2什么是数据库 5
1.3数据模型 6
1.4数据库系统结构 7
数据库系统的三级模式结构 8
三级模式结构的二级映像 9
1.5数据库管理系统 9
数据库管理系统的功能 9
数据库管理系统的组成 12
数据库系统的工作过程 12
1.6数据库系统的不同视图 13
1.7数据库技术的发展 15
1.8小结 16
习题 16
第2章 数据模型 18
2.1 E-R概念模型 18
E-R数据模型中的基本概念 18
E-R数据模型 21
2.2层次数据模型 25
2.3网状数据模型 26
2.4关系数据模型 28
关系模型的基本概念和结构 28
关系模型的数据完整性约束 30
关系模型的数据操纵 30
关系模型与网状和层次模型的比较 31
2.5面向对象数据模型 32
2.6小结 33
习题 34
第3章 关系数据库 35
3.1关系模型的基本概念 35
关系的定义 35
关系模式和关系数据库 37
键 37
完整性约束 38
3.2关系代数 39
传统的集合运算 40
专门的关系运算 41
扩充的关系运算 44
举例 46
ISBL语言 47
3.3元组关系演算 48
元组关系演算简介 48
元组关系演算语言ALPHA 50
3.4域关系演算 52
域关系演算简介 52
域关系演算语言QBE 53
关系运算的安全限制和三种关系运算的等价性 56
3.5小结 58
习题 58
第4章 关系数据库标准语言SQL 60
4.1 SQL简介 60
4.2 SQL的系统结构 61
4.3 SQL的数据定义 61
SQL模式的定义和删除 62
基本表的定义、修改和删除 62
索引的建立和删除 65
4.4 SQL的数据操纵 66
数据查询 66
数据更新 74
4.5 SQL中的视图 76
视图的定义 77
视图上的操作 78
视图的优点 80
4.6 SQL的数据控制 81
授权 82
权限回收 83
4.7嵌入式SQL 83
嵌入式SQL与主语言的接口 84
不用游标的嵌入式SQL 85
用游标的嵌入式SQL 87
嵌入式SQL应用实例 89
动态SQL 91
4.8小结 92
习题 92
第5章 查询处理和查询优化 94
5.1关系数据库系统的查询处理 94
查询处理过程 94
执行查询操作的基本算法 95
5.2关系数据库系统的查询优化 99
查询优化技术 99
查询优化实例 100
5.3代数优化 102
关系代数表达式的等价变换规则 103
代数优化策略 105
代数优化算法 105
5.4基于存取路径的优化 108
5.5基于代价估算的优化 109
选择操作的代价估算 110
连接操作的代价估算 111
5.6小结 112
习题 112
第6章 数据库的安全性 114
6.1计算机安全性概述 114
6.2数据库安全性概述 116
6.3用户标识与鉴别 117
6.4存取控制 118
自主存取控制 118
强制存取控制 123
6.5视图机制 124
6.6数据加密 126
6.7数据库审计 127
6.8统计数据库的安全性 127
6.9 SQL Server的安全控制 128
SQL Server的安全体系结构 128
登录管理 129
数据库用户管理 131
权限管理 132
角色管理 134
审计 136
6.10小结 137
习题 138
第7章 数据库的完整性 139
7.1数据库的完整性概述 139
完整性约束条件 139
实现数据完整性的方法 141
7.2实体完整性 141
实体完整性的定义 142
实体完整性检查和违约处理 143
7.3参照完整性 143
7.4用户定义的完整性 146
7.5触发器 148
7.6 SQL Server中数据库完整性的实现 152
7.7小结 157
习题 158
第8章 数据库恢复技术 160
8.1事务的基本概念和特征 160
事务的基本概念 160
事务特征 160
事务状态 162
事务原子性和持久性的实现 163
事务的并发运行 163
8.2数据库恢复的必要性 164
8.3数据库恢复策略 164
8.4数据转储与恢复 166
8.5基于日志的数据库恢复 168
数据库系统日志文件 168
使用日志恢复数据库 168
8.6检查点恢复技术 171
8.7数据库镜像恢复技术 172
8.8 SQL Server的数据恢复机制 173
SQL Server中的事务 173
备份和恢复 174
8.9小结 179
习题 180
第9章 并发控制 181
9.1并发事务运行存在的异常问题 181
9.2并发调度的可串行性 183
可串行化调度 183
调度的冲突等价性 184
调度的状态等价性 185
调度的可串行性测试 186
9.3基于封锁的并发控制技术 187
锁 187
封锁协议 188
活锁 189
死锁 190
两阶段封锁协议 192
锁表 192
9.4多粒度封锁 194
9.5基于时间戳协议的并发控制 196
时间戳 196
时间戳协议 196
9.6基于有效性确认的并发控制 198
9.7插入与删除操作对并发控制的影响 200
9.8 SQL Server中的并发控制 202
事务的隔离级别 202
专用锁 203
锁的使用与管理 204
9.9小结 205
习题 206
第10章 关系数据库设计理论 208
10.1关系模型的存储异常 208
10.2函数依赖 210
函数依赖的定义 210
函数依赖的蕴涵性 212
10.3函数依赖公理 212
Armstrong公理 212
函数依赖集的等价和覆盖 216
10.4模式分解 218
无损连接分解 219
分解的保持依赖性 222
10.5关系模式的规范化 223
第一范式 224
第二范式(2NF) 225
第三范式 226
Boyce-Codd范式(BCNF) 227
模式分解算法 228
10.6多值依赖和4NF 230
多值依赖 230
4NF 233
10.7连接依赖和投影-连接范式(Project-Join NF) 234
连接依赖 234
投影-连接范式(Project-Join NF) 235
10.8小结 236
习题 236
第11章 数据库设计 238
11.1数据库设计方法 238
11.2数据模型与数据建模 240
11.3 IDEF1X数据建模方法 242
数据模型的结构 243
逻辑模型 243
物理模型 244
11.4 IDEF1X的语法和语义 244
11.5 IDEF1X建模过程 250
阶段0——设计的开始 250
阶段1——定义实体 251
阶段2——定义联系 252
阶段3——定义键 253
阶段4——定义属性 254
11.6 ERwin数据建模 254
ERwin的工作空间 254
建立实体联系 255
两个实体的多个联系的处理 256
递归联系 258
分类联系 258
使用域简化数据类型的设置 260
将数据模型导入到数据库 261
11.7合同管理系统数据建模 263
合同管理应用需求 263
合同管理应用系统功能需求 265
实体的确定 267
联系的确定 267
确定属性 268
11.8小结 269
习题 269
第12章 数据库编程 271
12.1 Transact-SQL 271
Transact-SQL元素 272
过程的类型 275
变量和参数 277
控制流程 277
错误处理 278
12.2 Transact-SQL游标 280
游标的基本概念与操作 281
处理游标中的行 283
12.3 Transact-SQL存储过程 285
什么是存储过程 285
存储过程的类型 286
设计与实现存储过程 287
12.4 Transact-SQL用户定义函数 290
多语句表值函数 292
标量函数 293
内联表值函数 294
12.5 Transact-SQL触发器 295
Transact-SQL触发器基本概念 295
DML触发器 296
deleted表和inserted表 297
AFTER触发器 297
INSTEAD OF触发器 300
12.6 ADO.NET 303
数据提供程序 306
数据集 308
12.7小结 309
习题 310
第13章 数据库的存储结构 311
13.1数据库存储设备 311
物理存储设备概述 311
存储器的层次结构 312
数据库的存储体系 313
磁盘容错技术 314
13.2记录的存储结构 315
13.3文件的存储结构 317
无序文件 318
顺序文件 319
散列文件 320
多表聚集文件 322
13.4索引文件 323
索引概述 323
稀疏索引和稠密索引 325
聚集索引和辅助索引 325
B+树索引 327
散列索引 330
13.5典型DBMS的存储结构 331
SQL Server的存储结构 331
Oracle的存储结构 332
13.6小结 333
习题 334
第14章 分布式数据库系统 335
14.1分布式数据库系统概述 335
分布式数据库系统的定义 335
分布式数据系统的基本特征 336
分布式数据库系统的组成 337
分布式数据库的模式结构 338
分布式数据库系统的分类 339
14.2数据分布和分布透明性 339
数据分片 339
数据分布 340
分布透明性 341
14.3分布式查询处理和优化 343
分布式查询的分类 343
分布式查询处理过程 344
分布式查询优化 345
14.4分布式事务管理 347
分布式事务恢复 348
分布式并发控制 350
14.5分布式目录管理 352
14.6小结 352
习题 353
第15章 对象和对象关系数据库 354
15.1概述 354
15.2面向对象数据库 356
面向对象数据模型 357
面向对象数据库语言 359
面向对象数据库系统 362
15.3对象关系数据库 363
对象关系数据模型 363
对象关系数据库系统 368
15.4小结 368
习题 368
第16章 多媒体数据库 369
16.1多媒体数据库的特点 369
16.2系统体系结构 370
多媒体数据库系统的层次结构 370
多媒体数据库系统的组织结构 371
16.3多媒体数据模型 373
数据模型的需求 373
通用数据模型 373
16.4多媒体数据的查询 374
16.5特征提取、索引和相似性度量 376
16.6 QoS保证 377
16.7多媒体数据库的实现 378
16.8其他问题 380
16.9小结 381
习题 382
第17章 数据库新技术与新应用 383
17.1数据库新技术 384
面向对象数据库 384
实时数据库 385
主动数据库 386
分布式数据库 386
数据挖掘 387
多媒体数据库 387
17.2并行数据库 387
并行数据库系统的体系结构 387
并行处理技术 389
商用并行数据库系统的并行策略 390
17.3主动数据库 391
17.4空间数据库 395
基本概念 395
空间数据操作 398
空间数据建模 398
空间数据索引 400
17.5 XML数据库 401
原生XML数据库 402
XML数据库的研究问题 405
17.6小结 407
习题 407
参考文献 408