第1章 数据库引论 1
1.1引言 1
1.2数据库的基本概念 2
1.2.1数据、信息及其管理 2
1.2.2数据库技术的发展 3
1.2.3数据库技术的主要特点 5
1.2.4数据技术的研究领域 7
1.3数据库体系结构 7
1.3.1数据库管理系统外部的体系结构 7
1.3.2数据库管理系统内部的系统结构 8
1.3.3三级模式间的映射 10
1.4常用的关系型数据库管理系统简介 10
1.4.1 Oracle关系数据库 10
1.4.2 Sybase关系数据库 11
1.4.3 Microsoft SQL Server数据库 13
本章小结 13
习题 14
第2章 数据模型 15
2.1数据模型的基本概念 15
2.1.1概念世界与概念模型 15
2.1.2信息模型 19
2.1.3物理模型 19
2.2数据模型的组成要素 19
2.2.1数据结构 19
2.2.2数据操作 20
2.2.3完整性约束 20
2.3常用的几种数据模型 20
2.3.1层次模型 20
2.3.2网状模型 21
2.3.3关系模型 23
2.3.4面向对象数据模型 24
本章小结 25
习题 25
第3章 关系数据库 27
3.1关系数据结构及形式化定义 27
3.1.1关系 27
3.1.2关系模式 29
3.1.3关系数据库 29
3.2关系操作 30
3.2.1基本的关系操作 30
3.2.2关系数据语言的分类 30
3.3关系的完整性 31
3.3.1关系的三类完整性约束 31
3.32实体完整性 31
3.3.3参照完整性 31
3.3.4用户定义的完整性 32
3.4关系代数 33
3.4.1传统的集合运算 33
3.4.2专门的关系运算 34
本章小结 39
习题 39
第4章 关系数据库标准语言SQL 42
4.1 SQL语言概述 42
4.1.1 SQL的产生与发展 42
4.1.2 SQL数据库的体系结构 42
4.1.3 SQL的组成 43
4.1.4 SQL的特点 44
4.2学生-课程数据库 45
4.3数据定义 45
4.3.1基本表的创建、删除和修改 45
4.3.2索引的建立与删除 51
4.4数据查询 52
4.4.1 SELECT的基本应用 53
4.4.2连接查询 59
4.4.3嵌套查询 63
4.4.4集合查询 68
4.5数据更新 70
4.5.1插入数据 70
4.5.2修改数据 71
4.5.3删除数据 72
4.6视图 73
4.6.1创建视图 73
4.6.2删除视图 75
4.6.3查询视图 76
4.6.4更新视图 76
4.6.5视图的特点 78
4.7嵌入式SQL 79
4.7.1嵌入式SQL的一般形式 79
4.7.2嵌入式SQL语句与主语言之间的通信 79
4.7.3不用游标的SQL语句 82
4.8使用游标的SQL语句 85
4.8.1查询结果为多条记录的SELECT语句 85
4.8.2 CURRENT形式的UPDAT语句和DELETE语句 87
4.9动态SQL 88
4.10 PL/SQL与存储过程 88
4.10.1 PL/SQL与存储过程概述 89
4.10.2 PL/SQL的程序结构 89
4.10.3控制结构 90
4.10.4异常处理 90
4.10.5存储过程 91
4.10.6游标 92
4.10.7触发器 93
本章小结 94
习题 94
第5章 数据库安全与保护 102
5.1数据库的安全性 102
5.1.1数据库系统的安全概述 102
5.1.2数据库的安全性控制 103
5.1.3用户标识和鉴别 104
5.1.4存取控制 104
5.1.5视图机制 109
5.1.6神计 110
5.1.7数据加密 110
5.2数据库完整性 110
5.2.1完整性约束条件 111
5.2.2完整性控制 112
5.3数据库并发控制 114
5.3.1并发控制概述 114
5.3.2可串行性 120
5.3.3封锁 121
5.3.4封锁协议 122
5.3.5活锁和死锁 126
5.4数据库恢复技术 129
5.4.1故障的种类 129
5.4.2恢复的实现技术 130
5.4.3恢复策略 133
本章小结 135
习题 135
第6章 关系数据库设计理论 138
6.1数据依赖对关系模式的影响 138
6.2关系模式的规范化 139
6.2.1函数依赖 140
6.2.2码 140
6.2.3范式 141
6.3多值依赖与第四范式(4NF) 143
6.3.1多值依赖 143
6.3.2第四范式 145
6.4数据依赖的公理系统 145
6.4.1函数依赖公理 146
6.4.2闭包及其计算 146
6.4.3函数依赖的覆盖 147
6.5关系模式的分解 149
6.5.1无损连接性 149
6.5.2函数依赖保持性 150
本章小结 152
习题 152
第7章 数据库设计 154
7.1数据库设计概述 154
7.1.1数据库设计方法 155
7.1.2数据库设计步骤 156
7.1.3数据库设计过程中的各级模式 156
7.2需求分析 157
7.2.1需求调查 158
7.2.2结构化分析方法 159
7.2.3数据流图 159
7.2.4数据字典 162
7.2.5系统需求说明书 165
7.2.6需求分析注意事项 167
7.3概念结构设计 167
7.3.1概念结构设计的方法与步骤 167
7.3.2设计局部视图 169
7.3.3集成视图 171
7.4逻辑结构设计 175
7.4.1 E-R模型向关系模型转换 175
7.4.2数据模型的优化方法 176
7.4.3设计用户子模式 177
7.5物理结构设计 178
7.5.1确定数据库的物理结构 178
7.5.2索引方法 179
7.5.3聚簇方法 180
7.5.4散列技术 181
7.5.5评价物理结构 181
7.6数据库实施 181
7.6.1数据库实施步骤 182
7.6.2数据库试运行和评价 183
7.7数据库维护 183
本章小结 184
习题 184
第8章 Oracle 10g简介 187
8.1 Oracle 10g产品特性简介 187
8.2 Oracle数据库体系结构 189
8.2.1 Oracle数据库服务器的物理存储结构 189
8.2.2 Oracle数据库的逻辑存储结构 191
8.2.3 Oracle 10g实例 193
8.3 Oracle数据库安全性管理 195
8.3.1数据库的存取控制 195
8.3.2特权和角色 197
8.3.3审计 198
8.4 Oracle数据库完整性管理 198
8.4.1完整性约束 199
8.4.2数据库触发器 199
8.5 Oracle数据库并发控制 200
8.5.1封锁机制 200
8.5.2手工的数据封锁 200
8.6 Oracle数据库备份与恢复 201
8.6.1恢复数据库所使用的结构 201
8.6.2联机日志 201
8.6.3归档日志 202
8.6.4数据库备份 203
8.6.5数据库恢复 203
本章小结 204
习题 205
第9章 现代数据库系统及其典型代表 206
9.1现代数据库系统概述 206
9.1.1现代数据库逻辑存储结构分类 206
9.1.2现代数据库系统的新特征 209
9.1.3现代数据库系统的研究领域 210
9.2分布式数据库系统 210
9.2.1分布式数据库的概念 210
9.2.2分布式数据库的特性 211
9.2.3分布式数据库的数据存储方式 214
9.2.4 Oracle分布式数据库及其应用程序的建立 215
9.3面向对象数据库 218
9.3.1面向对象数据库的特征及功能 218
9.3.2面向对象数据库模型 219
9.3.3对象关系数据库和对象关系映射 221
9.3.4对象持久性 222
9.4数据仓库 224
9.4.1从数据库到数据仓库 224
9.4.2数据仓库的概念及特点 225
9.4.3数据仓库中的数据组织 226
9.4.4数据仓库的关键技术 229
9.4.5 Oracle数据仓库的解决方案 232
本章小结 234
习题 235
参考文献 236