第1篇 数据库理论知识篇 1
第1章 数据库引论 1
1.1 数据库技术的发展历史 1
1.1.1 数据处理的发展 1
1.1.2 数据管理的发展 2
1.1.3 数据库技术 4
1.2 数据库系统结构 6
1.2.1 数据库的三级结构 6
1.2.2 模式、存储模式与子模式 7
1.2.3 数据库及其特点 8
1.3 数据库系统 10
1.3.1 数据库系统的构成 10
1.3.2 数据库管理系统 12
1.3.3 数据操纵接口——数据库语言 13
1.3.4 数据库存取的执行过程 15
1.4 小结 15
1.5 习题 16
第2章 数据模型 17
2.1 现实世界到计算机的映射 17
2.1.1 三个世界 17
2.1.2 两种模型 20
2.2 概念模型 21
2.2.1 基本元素 21
2.2.2 连接 22
2.2.3 E-R图 24
2.3 层次模型 25
2.3.1 基本概念和结构 26
2.3.2 操作 29
2.3.3 约束 30
2.4.1 基本概念和结构 31
2.4 网状模型 31
2.4.2 操作 33
2.4.3 约束 34
2.5 关系模型 34
2.6 其他数据模型 36
2.6.1 面向对象的数据模型 36
2.6.2 对象关系数据模型 39
2.7 小结 40
2.8 习题 41
第3章 关系数据库理论 43
3.1 关系模型概述 43
3.1.1 关系的数学描述 43
3.1.2 基本术语 43
3.2.1 五种基本关系代数运算 45
3.2 关系代数 45
3.2.2 四种组合关系代数运算 47
3.2.3 七种扩充关系代数运算 49
3.3 关系演算 51
3.3.1 关系的表示 52
3.3.2 元组关系演算 52
3.3.3 域关系演算 55
3.4 关系模型总结 57
3.4.1 关系模型的三要素 57
3.4.2 关系模型的完整性约束 57
3.4.3 关系模型的特点 58
3.5 小结 58
3.6 习题 59
4.1 SQL语言概述 62
4.1.1 SQL语言的基本组成 62
第4章 关系数据库标准查询语言SQL 62
4.1.2 SQL语言的特点 63
4.1.3 SQL语言的数据类型 64
4.2 SQL中的数据定义 64
4.2.1 模式的定义、修改和撤销 65
4.2.2 索引的建立和撤销 67
4.3 SQL中的数据查询 68
4.3.1 SQL的单表查询 69
4.3.2 SQL的计算与统计函数 71
4.3.3 SQL的查询条件 71
4.3.4 SQL查询结果的聚集与排序 73
4.3.5 SQL的连接、嵌套和集合查询 74
4.4 SQL中的数据更新 77
4.4.1 SQL插入数据语句 77
4.4.2 SQL修改数据语句 78
4.4.3 SQL删除数据语句 79
4.5 SQL中的视图 80
4.5.1 视图的定义、查询和更新 80
4.5.2 视图的用途 82
4.6 SQL中的特殊操作 84
4.6.1 空值 84
4.6.2 外部连接 87
4.6.3 递归查询 89
4.7 小结 91
4.8 习题 92
第2篇 数据库管理系统篇 94
第5章 数据库管理系统 94
5.1 数据库管理系统概述 94
5.1.1 DBMS的功能 94
5.1.2 常用DBMS 96
5.1.3 SQL Server 2000的功能特点 98
5.2 数据库管理系统结构 99
5.2.1 DBMS的系统结构 99
5.2.2 DBMS的解释执行过程 102
5.2.3 SQL Server 2000的结构 103
5.3 数据字典 105
5.3.1 数据字典在DBMS中的作用 105
5.3.2 数据字典的内容 106
5.3.3 数据字典与DBMS 107
5.3.4 数据字典的使用 108
5.3.5 SQL Server的数据字典 109
5.4 分布式数据库管理系统 110
5.4.1 分布式数据库系统及其结构 110
5.4.2 数据分布策略 113
5.5 小结 114
5.6 习题 115
第6章 数据存储与查询技术 117
6.1 数据库基本元素 117
6.2 数据库存储管理 117
6.2.1 存储介质 118
6.2.2 基本元素存储 119
6.2.3 数据压缩技术 124
6.3 数据组织管理 125
6.3.1 文件结构与存取路径 125
6.3.2 索引技术 126
6.3.3 散列技术 131
6.4 数据查询技术 131
6.4.1 数据库系统查询的实现 132
6.4.2 查询编译器 132
6.4.4 查询优化 135
6.4.3 查询执行 135
6.5.1 SQL Server服务器系统结构 136
6.5 SQL Server的数据查询技术 136
6.5.2 SQL Server查询技术 137
6.5.3 SQL Server查询优化技术 137
6.6 小结 139
6.7 习题 139
第7章 事务、安全与完整性约束 141
7.1 事务管理 141
7.1.1 事务 141
7.1.2 事务的恢复 145
7.1.3 事务的并发控制 148
7.1.4 分布式数据库的并发控制与恢复 150
7.1.5 SQL Server的事务管理 153
7.2.1 数据库安全控制的方法 156
7.2 安全管理 156
7.2.2 SQL Server的数据库的安全管理 159
7.3 完整性约束 160
7.3.1 完整性约束的形态 160
7.3.2 SQL中的完整性约束 161
7.3.3 SQL Server的完整性约束机制 164
7.4 小结 165
7.5 习题 166
第3篇 数据库应用技术篇 168
第8章 关系模式的规范化设计 168
8.1 关系模式的设计问题 168
8.2 规范化理论 169
8.2.1 函数依赖 169
8.2.2 基于函数依赖的范式 173
8.2.3 多值依赖与第四范式 175
8.2.4 连接依赖与第五范式 177
8.3 关系模式的分解 178
8.3.1 模式分解 179
8.3.2 无损连接分解和保持函数依赖 179
8.3.3 模式分解算法 182
8.4 规范化理论应用 186
8.4.1 规范化的优缺点 186
8.4.2 反规范化 188
8.4.3 规范化示例 188
8.5 小结 190
8.6 习题 191
9.1.2 数据库设计的方法 194
9.1.1 数据库设计的内容 194
9.1 数据库设计概述 194
第9章 数据库设计 194
9.1.3 数据库设计的步骤和特点 195
9.2 需求分析 198
9.3 概念设计 198
9.3.1 概念模型设计的方法与步骤 198
9.3.2 数据抽象与局部视图设计 200
9.3.3 视图的集成 201
9.4 逻辑设计 205
9.4.1 概念模型向数据模型的转换 205
9.4.2 设计用户模式 208
9.4.3 模型的评价与优化 208
9.5 物理设计 209
9.5.1 物理设计的要求和内容 209
9.6.1 数据库数据的装入 211
9.6 数据库的实施与维护 211
9.5.2 创建索引 211
9.5.3 性能评价 211
9.6.2 数据库的运行和维护 212
9.6.3 DBA的组织 212
9.6.4 数据库的性能评价与监视 214
9.6.5 日志与备份恢复 215
9.7 小结 215
9.8 习题 216
第10章 数据库与应用系统 218
10.1 应用系统的层次结构 218
10.1.1 单机应用系统 218
10.1.2 C/S应用系统 219
10.1.3 三层体系结构 221
10.1.4 B/S应用系统 222
10.2.1 宿主系统与自含系统 223
10.2 数据库与应用系统 223
10.2.2 嵌入式SQL语句 224
10.2.3 数据库访问中间件 227
10.2.4 数据库应用系统开发工具 232
10.3 网络环境下数据库系统的新技术 234
10.3.1 XML 235
10.3.2 数据复制技术 237
10.3.3 网络数据库 239
10.3.4 分布环境下的信息集成技术 242
10.4 小结 244
10.5 习题 245
第11章 数据库技术和应用的新发展 246
11.1 对象数据库和对象关系数据库 246
11.1.1 对象数据库 247
11.1.2 对象关系数据库 248
11.2 主存数据库 250
11.3 其他数据库 250
11.3.1 工程数据库/空间数据库 250
11.3.2 移动数据库 251
11.4 数据库在应用系统中的新应用 252
11.4.1 决策支持系统 252
11.4.2 数据分析 253
11.4.3 数据挖掘 254
11.4.4 数据仓库系统 254
11.5 小结 256
11.6 习题 257
附录A 258
A.1 实验1 了解SQL Server 2000的运行环境 258
A.2 实验2 SQL Server的注册 260
A.3 实验3 数据库的创建和删除 261
A.4 实验4 用SQL语句创建数据库 264
A.5 实验5 表的创建和删除 267
A.6 实验6 索引的创建 267
A.7 实验7 简单SELECT语句的使用 270
A.8 实验8 集合函数与行集函数 273
A.9 实验9 带子句的SELECT语句 275
A.10 实验10 子查询 279
A.11 实验11 面向用户的视图 281
A.12 实验12 许可管理 283
A.13 实验13 SQL Server的监控 286
A.14 实验14 数据库的维护 288
A.15 实验15 数据库的备份 290
A.16 实验16 数据库的恢复 291
A.17 实验17 创建维护计划 293
参考文献 297