第一篇 基础篇 3
第1章 绪论 3
1.1数据库系统概述 3
1.1.1数据库的4个基本概念 3
1.1.2数据管理技术的产生和发展 6
1.1.3数据库系统的特点 9
1.2数据模型 14
1.2.1两类数据模型 15
1.2.2概念模型 16
1.2.3数据模型的组成要素 17
1.2.4常用的数据模型 18
1.2.5层次模型 19
1.2.6网状模型 22
1.2.7关系模型 25
1.3数据库系统的结构 27
1.3.1数据库系统模式的概念 27
1.3.2数据库系统的三级模式结构 28
1.3.3数据库的二级映像功能与数据独立性 29
1.4数据库系统的组成 31
1.5小结 33
习题 34
本章参考文献 35
第2章 关系数据库 37
2.1关系数据结构及形式化定义 38
2.1.1关系 38
2.1.2关系模式 42
2.1.3关系数据库 43
2.1.4关系模型的存储结构 43
2.2关系操作 43
2.2.1基本的关系操作 43
2.2.2关系数据语言的分类 44
2.3关系的完整性 45
2.3.1实体完整性 45
2.3.2参照完整性 45
2.3.3用户定义的完整性 48
2.4关系代数 48
2.4.1传统的集合运算 49
2.4.2专门的关系运算 50
2.5关系演算 57
2.5.1元组关系演算语言ALPHA 57
2.5.2元组关系演算 62
2.5.3域关系演算语言QBE 64
2.6小结 70
习题 70
实验 72
本章参考文献 72
第3章 关系数据库标准语言SQL 75
3.1 SQL概述 75
3.1.1 SQL的产生与发展 75
3.1.2 SQL的特点 76
3.1.3 SQL的基本概念 78
3.2学生-课程数据库 79
3.3数据定义 80
3.3.1模式的定义与删除 81
3.3.2基本表的定义、删除与修改 82
3.3.3索引的建立与删除 87
3.3.4数据字典 89
3.4数据查询 89
3.4.1单表查询 90
3.4.2连接查询 99
3.4.3嵌套查询 103
3.4.4集合查询 111
3.4.5基于派生表的查询 113
3.4.6 SELECT语句的一般格式 114
3.5数据更新 115
3.5.1插入数据 115
3.5.2修改数据 117
3.5.3删除数据 118
3.6空值的处理 119
3.7视图 121
3.7.1定义视图 121
3.7.2查询视图 124
3.7.3更新视图 126
3.7.4视图的作用 128
3.8小结 129
习题 130
实验 131
本章参考文献 131
第4章 数据库安全性 133
4.1数据库安全性概述 133
4.1.1数据库的不安全因素 133
4.1.2安全标准简介 134
4.2数据库安全性控制 137
4.2.1用户身份鉴别 138
4.2.2存取控制 140
4.2.3自主存取控制方法 140
4.2.4授权:授予与收回 141
4.2.5数据库角色 145
4.2.6强制存取控制方法 147
4.3视图机制 149
4.4审计 149
4.5数据加密 151
4.6其他安全性保护 153
4.7小结 154
习题 154
实验 155
本章参考文献 156
第5章 数据库完整性 157
5.1实体完整性 158
5.1.1定义实体完整性 158
5.1.2实体完整性检查和违约处理 159
5.2参照完整性 160
5.2.1定义参照完整性 160
5.2.2参照完整性检查和违约处理 160
5.3用户定义的完整性 163
5.3.1属性上的约束条件 163
5.3.2元组上的约束条件 164
5.4完整性约束命名子句 165
5.5域中的完整性限制 166
5.6断言 167
5.7触发器 168
5.7.1定义触发器 169
5.7.2激活触发器 171
5.7.3删除触发器 172
5.8小结 172
习题 173
实验 173
本章参考文献 173
第二篇 设计与应用开发篇 177
第6章 关系数据理论 177
6.1问题的提出 177
6.2规范化 180
6.2.1函数依赖 180
6.2.2码 181
6.2.3范式 182
6.2.4 2NF 182
6.2.5 3NF 184
6.2.6 BCNF 184
6.2.7多值依赖 185
6.2.8 4NF 188
6.2.9规范化小结 189
6.3数据依赖的公理系统 190
6.4模式的分解 194
6.4.1模式分解的三个定义 194
6.4.2分解的无损连接性和保持函数依赖性 196
6.4.3模式分解的算法 198
6.5小结 201
习题 202
本章参考文献 204
第7章 数据库设计 205
7.1数据库设计概述 205
7.1.1数据库设计的特点 206
7.1.2数据库设计方法 207
7.1.3数据库设计的基本步骤 207
7.1.4数据库设计过程中的各级模式 210
7.2需求分析 211
7.2.1需求分析的任务 211
7.2.2需求分析的方法 212
7.2.3数据字典 213
7.3概念结构设计 215
7.3.1概念模型 215
7.3.2 E-R模型 215
7.3.3扩展的E-R模型 218
7.3.4 UML 223
7.3.5概念结构设计 224
7.4逻辑结构设计 231
7.4.1 E-R图向关系模型的转换 231
7.4.2数据模型的优化 233
7.4.3设计用户子模式 234
7.5物理结构设计 234
7.5.1数据库物理设计的内容和方法 235
7.5.2关系模式存取方法选择 235
7.5.3确定数据库的存储结构 237
7.5.4评价物理结构 238
7.6数据库的实施和维护 238
7.6.1数据的载入和应用程序的调试 238
7.6.2数据库的试运行 239
7.6.3数据库的运行和维护 240
7.7小结 241
习题 241
实验 242
本章参考文献 242
第8章 数据库编程 245
8.1嵌入式SQL 245
8.1.1嵌入式SQL的处理过程 245
8.1.2嵌入式SQL语句与主语言之间的通信 246
8.1.3不用游标的SQL语句 249
8.1.4使用游标的SQL语句 251
8.1.5动态SQL 252
8.2过程化SQL 253
8.2.1过程化SQL的块结构 253
8.2.2变量和常量的定义 253
8.2.3流程控制 254
8.3存储过程和函数 255
8.3.1存储过程 256
8.3.2函数 258
8.3.3过程化SQL中的游标 258
8.4 ODBC编程 259
8.4.1 ODBC概述 259
8.4.2 ODBC工作原理概述 260
8.4.3 ODBC API基础 261
8.4.4 ODBC的工作流程 263
8.5 OLE DB 267
8.6 JDBC编程 269
8.7小结 270
习题 270
实验 271
本章参考文献 271
第三篇 系统篇 275
第9章 关系查询处理和查询优化 275
9.1关系数据库系统的查询处理 275
9.1.1查询处理步骤 275
9.1.2实现查询操作的算法示例 277
9.2关系数据库系统的查询优化 279
9.2.1查询优化概述 280
9.2.2一个实例 280
9.3代数优化 282
9.3.1关系代数表达式等价变换规则 283
9.3.2查询树的启发式优化 284
9.4物理优化 286
9.4.1基于启发式规则的存取路径选择优化 286
9.4.2基于代价估算的优化 287
9.5查询计划的执行 289
9.6小结 289
习题 290
实验 291
本章参考文献 291
第10章 数据库恢复技术 293
10.1事务的基本概念 293
10.2数据库恢复概述 294
10.3故障的种类 295
10.4恢复的实现技术 297
10.4.1数据转储 297
10.4.2登记日志文件 298
10.5恢复策略 300
10.5.1事务故障的恢复 300
10.5.2系统故障的恢复 300
10.5.3介质故障的恢复 301
10.6具有检查点的恢复技术 301
10.7数据库镜像 303
10.8小结 304
习题 305
实验 306
本章参考文献 306
第11章 并发控制 309
11.1并发控制概述 310
11.2封锁 312
11.3封锁协议 312
11.4活锁和死锁 315
11.4.1活锁 315
11.4.2死锁 315
11.5并发调度的可串行性 317
11.5.1可串行化调度 317
11.5.2冲突可串行化调度 317
11.6两段锁协议 319
11.7封锁的粒度 320
11.7.1多粒度封锁 321
11.7.2意向锁 321
11.8其他并发控制机制 323
11.8.1多版本并发控制 323
11.8.2改进的多版本并发控制 324
11.9小结 325
习题 326
实验 327
本章参考文献 327
第12章 数据库管理系统 329
12.1数据库管理系统的基本功能 329
12.2数据库管理系统的系统结构 330
12.2.1数据库管理系统的层次结构 330
12.2.2关系数据库管理系统的运行过程示例 331
12.3语言处理层 333
12.3.1语言处理层的任务和工作步骤 333
12.3.2解释方法 335
12.3.3预编译方法 336
12.4数据存取层 337
12.4.1数据存取层的系统结构 338
12.4.2数据存取层的功能子系统 339
12.5缓冲区管理 341
12.6数据库的物理组织 343
12.7小结 344
习题 345
本章参考文献 346
第四篇 新技术篇 349
第13章 数据库技术发展概述 349
13.1数据库技术发展历史回顾 349
13.2数据库发展的三个阶段 350
13.2.1第一代数据库系统 350
13.2.2第二代数据库系统 351
13.2.3新一代数据库系统 351
13.3数据库系统发展的特点 352
13.3.1数据模型的发展 352
13.3.2数据库技术与相关技术相结合 355
13.3.3面向应用领域的数据库新技术 357
13.4数据管理技术的发展趋势 359
13.4.1数据管理技术面临的挑战 359
13.4.2数据管理技术的发展与展望 360
13.5小结 362
习题 362
本章参考文献 363
第14章 大数据管理 365
14.1大数据概述 365
14.1.1什么是大数据 365
14.1.2大数据的特征 366
14.2大数据的应用 369
14.2.1感知现在预测未来——互联网文本大数据管理与挖掘 369
14.2.2数据服务实时推荐——基于大数据分析的用户建模 375
14.3大数据管理系统 377
14.3.1 NoSQL数据管理系统 377
14.3.2 NewSQL数据库系统 378
14.3.3 MapReduce技术 379
14.3.4大数据管理系统的新格局 380
14.4小结 382
习题 383
本章参考文献 383
第15章 内存数据库系统 385
15.1概述 385
15.2内存数据库的发展历程 386
15.3内存数据库的特性 389
15.4内存数据库的关键技术 389
15.4.1数据存储 390
15.4.2查询处理及优化 392
15.4.3并发与恢复 403
15.5小结 405
习题 405
本章参考文献 406
第16章 数据仓库与联机分析处理技术 409
16.1数据仓库技术 409
16.2联机分析处理技术 413
16.3数据挖掘技术 414
16.4大数据时代的新型数据仓库 416
16.5小结 419
习题 420
本章参考文献 420
数字资源使用说明 421