第1章 数据库基础 1
1.1 信息、数据与数据处理 1
1.2 数据管理技术的发展历史 2
1.3 数据库概念 5
1.4 数据模型 5
1.4.1 数据模型3要素 6
1.4.2 关系模型 6
1.5 数据库体系结构 8
1.5.1 数据库体系结构中的3级
模式 8
1.5.2 数据库体系结构中的两种映射与数据独立性 9
1.6 数据库管理系统 9
1.6.1 数据库管理系统的目标 9
1.6.2 数据库管理系统的基本
功能 10
1.7 数据库系统 11
1.7.1 数据库系统的组成 11
1.7.2 数据库系统的分类 12
本章小结 13
习题1 13
第2章 关系数据库理论 15
2.1 域与笛卡儿积 15
2.2 关系的数据结构 16
2.3 关系的完整性 18
2.4 关系代数 20
2.5 传统的关系运算 20
2.6 选择运算和投影运算 22
2.7 连接运算 23
2.8 除运算 24
2.9 关系运算应用举例 25
2.10 关系数据库系统的查询优化 26
本章小结 27
习题2 27
第3章 Oracle数据库 30
3.1 Oracle数据库的发展 30
3.1.1 Oracle简介 30
3.1.2 Oracle 11g 31
3.2 搭建Oracle数据库学习环境 32
3.2.1 下载相关工具 32
3.2.2 安装相关工具 32
3.2.3 创建方案 33
3.2.4 启动SQLPlus连接
数据库 35
3.3 Oracle数据库系统的体系
结构 36
3.3.1 Oracle数据库的物理结构 36
3.3.2 Oracle数据库的逻辑结构 38
3.3.3 Oracle实例 40
3.3.4 Oracle实例的内存结构 40
3.3.5 Oracle实例的进程结构 42
本章小结 45
习题3 45
第4章 关系数据库标准语言及表操作 46
4.1 SQL概述 46
4.1.1 SQL的特点 47
4.1.2 SQL数据库的体系结构 47
4.1.3 SQL的组成 48
4.2 字符集与字符编码 48
4.2.1 字符集 49
4.2.2 字符编码 49
4.3 数据类型 49
4.4 创建与复制表 51
4.4.1 基本语法 51
4.4.2 创建表 52
4.4.3 复制表 54
4.5 修改表 54
4.5.1 修改表结构 54
4.5.2 重命名表 55
4.5.3 添加注释到表中 55
4.6 删除表和截断基本表 56
4.6.1 删除表 56
4.6.2 截断基本表 56
4.7 SQL的数据操作 57
4.7.1 插入数据 57
4.7.2 修改数据 58
4.7.3 删除数据 58
4.8 表空间 59
本章小结 60
习题4 60
实验一 数据定义和数据操作 61
第5章 单表查询 64
5.1 选择列 64
5.2 日期格式设置 66
5.3 比较运算 67
5.4 范围运算 67
5.5 集合运算 68
5.6 模糊查询运算 68
5.7 空值运算 69
5.8 混合运算 70
5.9 分组统计 70
5.10 排序 72
本章小结 72
习题5 72
实验二 单表查询 73
第6章 多表查询 75
6.1 连接查询 75
6.2 嵌套查询 77
6.2.1 不相关子查询 78
6.2.2 相关子查询 80
6.3 传统的集合运算 81
本章小结 82
习题6 82
实验三 多表查询 83
第7章 数据库常用对象 84
7.1 索引 84
7.1.1 索引的概念 84
7.1.2 创建索引 85
7.1.3 删除索引 85
7.2 视图 86
7.2.1 创建视图 86
7.2.2 删除视图 88
7.2.3 查询视图 89
7.2.4 更新视图 89
7.2.5 视图的特点 91
7.3 同义词 92
7.4 序列 92
本章小结 94
习题7 94
实验四 数据库常用对象 94
第8章 PL/SQL编程 96
8.1 PL/SQL编程概述 96
8.1.1 PL/SQL程序块 96
8.1.2 PL/SQL的变量、数据类型、常量、字符集与运算符 97
8.1.3 PL/SQL的控制语句 100
8.1.4 游标 103
8.1.5 PL/SQL中的异常 106
8.2 Oracle存储过程 109
8.2.1 存储过程基本知识 109
8.2.2 存储过程相关操作 109
8.2.3 存储过程示例 111
8.3 Oracle触发器 112
8.3.1 触发器基本知识 112
8.3.2 触发器相关操作 113
8.3.3 触发器示例 115
本章小结 117
习题8 117
实验五 存储过程与触发器 117
第9章 数据库设计 119
9.1 数据库设计概述 119
9.1.1 数据库设计的任务 119
9.1.2 数据库设计的内容 119
9.1.3 数据库设计方法 119
9.1.4 数据库设计的步骤 120
9.2 需求分析 121
9.2.1 需求分析的任务 121
9.2.2 需求分析的方法 123
9.2.3 需求分析注意点 126
9.3 概念结构设计 126
9.3.1 3个世界及其相互关系 126
9.3.2 概念模型 127
9.3.3 概念结构设计的方法与
步骤 131
9.4 逻辑结构设计 136
9.5 物理结构设计 138
9.5.1 确定物理结构 139
9.5.2 评价物理结构 140
9.6 数据库实施 140
9.6.1 建立实际数据库结构 141
9.6.2 装入数据 141
9.6.3 应用程序编码与调试 141
9.6.4 数据库试运行 142
9.6.5 整理文档 142
9.7 数据库的运行与维护 142
9.7.1 维护数据库的安全性与
完整性 143
9.7.2 监测并改善数据库性能 143
9.7.3 重新组织和构造数据库 143
本章小结 144
习题9 144
实验六 数据库设计 146
第10章 数据库规范化设计 148
10.1 基本概念 148
10.1.1 函数依赖 148
10.1.2 完全函数依赖 149
10.1.3 传递函数依赖 149
10.1.4 码 150
10.2 函数依赖的公理系统 150
10.2.1 函数依赖的逻辑蕴含 150
10.2.2 Armstrong公理
系统 150
10.2.3 函数依赖集闭包和属性依赖
集闭包 151
10.2.4 Armstrong公理的有效性和
完备性 152
10.2.5 函数依赖集的等价和
覆盖 153
10.2.6 函数依赖集的最小化 153
10.3 关系模式的规范化 155
10.3.1 范式 155
10.3.2 多值依赖与第四范式 159
10.3.3 关系模式的规范化 161
10.4 模式分解 162
10.4.1 函数依赖集的投影 162
10.4.2 模式分解概述 162
10.4.3 无损连接分解 162
10.4.4 保持函数依赖的分解 163
10.4.5 模式分解算法 164
本章小结 165
习题10 166
第11章 事务及其并发控制 167
11.1 事务处理 167
11.2 JDBC事务处理 171
11.3 事务的特性 172
11.4 事务的并发控制 173
11.4.1 丢失修改 174
11.4.2 不可重复读 174
11.4.3 读“脏”数据 175
11.5 封锁 175
11.5.1 封锁机制 175
11.5.2 封锁协议 176
11.6 事务隔离级别 177
本章小结 178
习题11 179
实验七 事务处理 179
第12章 数据库安全性 181
12.1 数据库安全概述 181
12.2 数据库的不安全因素 181
12.3 数据库安全控制技术 182
12.3.1 用户标识与鉴别 182
12.3.2 存取控制 182
12.3.3 数据库的视图机制 183
12.3.4 数据库的审计 184
12.3.5 数据加密 185
12.4 Oracle的自主存取控制 185
12.4.1 用户管理 185
12.4.2 权限管理 186
12.4.3 角色管理 187
12.4.4 授权 188
12.4.5 收回权限 190
12.5 Oracle审计 191
本章小结 194
习题12 194
实验八 数据控制语句 195
第13章 数据库恢复技术 196
13.1 数据库故障 196
13.2 恢复的实现技术 198
13.2.1 数据转储 198
13.2.2 日志文件 200
13.2.3 归档日志文件 201
13.3 恢复策略 201
13.3.1 事务故障的恢复 201
13.3.2 系统故障的恢复 201
13.3.3 介质故障的恢复 202
13.4 具有检查点的恢复技术 202
13.5 冗余磁盘阵列与数据库
镜像 203
13.6 Oracle备份与恢复技术 204
13.6.1 物理备份与恢复 205
13.6.2 逻辑备份与恢复 205
本章小结 210
习题13 210
实验九 数据备份与恢复 211
第14章 数据库应用系统开发 212
14.1 数据库应用系统结构 212
14.1.1 基于C/S模式的数据库
系统 213
14.1.2 基于B/S模式的数据库
系统 214
14.1.3 B/S模式与C/S模式的
比较 216
14.2 数据库访问接口方式 216
14.2.1 ODBC 217
14.2.2 ADO和ADO.NET 219
14.2.3 JDBC 220
14.3 数据库应用开发 222
14.3.1 数据库应用环境配置 222
14.3.2 数据库应用编程 222
14.3.3 建立连接 223
14.3.4 操作数据库 223
14.3.5 处理结果集 229
14.3.6 数据库的CRUD操作 232
14.3.7 安装WindowBuilder 235
本章小结 236
习题14 237
第15章 数据库技术的发展 238
15.1 数据库发展的三个阶段 238
15.2 数据模型的发展 239
15.3 数据库技术与其他相关技术
的结合 241
15.3.1 并行数据库系统 242
15.3.2 数据仓库系统 243
15.3.3 分布式数据库系统 246
15.4 数据管理技术的发展趋势 247
15.4.1 数据管理技术面临的
挑战 247
15.4.2 数据管理技术的发展与
展望 248
本章小结 249
习题15 250