第1章 绪论 2
1.1 数据库系统概述 2
1.1.1 数据库基本术语 2
1.1.2 数据管理技术的发展 3
1.1.3 数据库系统的特点 4
1.2 数据模型 6
1.2.1 数据模型的概念 6
1.2.2 实体联系模型 7
1.2.3 关系数据模型 10
1.2.4 关系数据库概述 12
1.3 数据库系统结构 12
1.3.1 数据库系统的三级模式结构 12
1.3.2 数据库的二级映像功能与数据独立性 13
1.4 数据库管理系统的体系结构 14
1.4.1 数据库管理系统的组成 14
1.4.2 数据库管理系统的控制功能 15
1.4.3 客户-服务器体系结构 16
1.5 数据库系统的组成 17
1.5.1 硬件平台及数据库 17
1.5.2 软件平台 17
1.5.3 数据库系统的相关人员 17
1.6 Oracle数据库系统概述 19
1.6.1 Oracle数据库系统简介 19
1.6.2 Oracle体系结构 20
1.7 小结 24
思考题与习题 24
第2章 关系数据库的理论基础 24
2.1 关系的数据结构 27
2.1.1 关系的数学定义 27
2.1.2 关系模式与关系数据库 29
2.1.3 关系的性质 30
2.2 关系的完整性 30
2.2.1 实体完整性 30
2.2.2 参照完整性 31
2.2.3 用户定义的完整性 31
2.3 关系代数 32
2.3.1 传统的集合运算 32
2.3.2 专门的关系运算 34
2.4 小结 42
思考题与习题 42
第3章 SQL基础 44
3.1 SQL概述 44
3.1.1 SQL的产生和发展 44
3.1.2 SQL的特点 45
3.2 数据定义 46
3.2.1 表的定义、查看、修改与删除 46
3.2.2 索引的定义、查看与删除 57
3.3 数据更新 60
3.3.1 插入数据 60
3.3.2 修改数据 62
3.3.3 删除数据 63
3.4 数据查询 64
3.4.1 单表查询 65
3.4.2 多表查询 73
3.4.3 嵌套查询 77
3.5 视图 78
3.5.1 定义视图 78
3.5.2 查询视图 79
3.5.3 基于视图的数据查询与更新 80
3.5.4 删除视图 81
3.6 小结 82
思考题与习题 82
实训 82
第4章 数据库设计 86
4.1 关系数据库设计的理论依据 86
4.1.1 函数依赖 86
4.1.2 规范化和范式 89
4.2 数据库设计方法 95
4.3 数据库设计步骤 95
4.4 需求分析 95
4.4.1 调查用户需求 96
4.4.2 分析用户需求 96
4.4.3 定义数据字典 97
4.5 概念结构设计 100
4.5.1 局部概念结构设计 100
4.5.2 总体概念结构设计 101
4.6 逻辑结构设计 102
4.6.1 E-R图向数据模型的转换 102
4.6.2 数据模型的优化 104
4.7 物理结构设计 105
4.7.1 确定数据库的物理结构 105
4.7.2 评价物理结构 105
4.8 数据库的实施 106
4.9 数据库的运行与维护 107
4.10 小结 108
思考题与习题 108
实训 109
第5章 Oracle数据库和表空间 109
5.1 创建Oracle数据库 111
5.1.1 使用数据库配置助手创建数据库 112
5.1.2 使用命令方式创建数据库 118
5.2 查看数据库信息 121
5.2.1 使用企业管理控制台方式查看数据库 121
5.2.2 使用命令方式查看数据库 123
5.3 启动和关闭数据库 129
5.3.1 启动数据库 129
5.3.2 关闭数据库 131
5.4 表空间 133
5.4.1 创建表空间 133
5.4.2 修改表空间 138
5.4.3 删除表空间 139
5.5 小结 140
思考题与习题 140
实训 140
第6章 Oracle基本对象 143
6.1 方案的概念 143
6.2 数据表 143
6.2.1 创建表 143
6.2.2 查看表 151
6.2.3 修改表 151
6.2.4 维护表数据 151
6.2.5 删除表 152
6.3 索引 152
6.3.1 创建索引 152
6.3.2 查看索引 154
6.3.3 修改索引 154
6.3.4 删除索引 154
6.4 视图 154
6.4.1 创建视图 154
6.4.2 查看视图 158
6.4.3 修改视图 158
6.4.4 删除视图 158
6.5 同义词 158
6.5.1 创建同义词 159
6.5.2 查看同义词 161
6.5.3 删除同义词 162
6.6 序列 162
6.6.1 创建序列 162
6.6.2 查看序列 165
6.6.3 修改序列 166
6.6.4 删除序列 167
6.7 小结 167
思考题与习题 168
实训 168
第7章 PL/SQL编程语言 171
7.1 PL/SQL概述 171
7.2 PL/SQL的基本语法要素 173
7.2.1 常量 173
7.2.2 变量和常量 173
7.2.3 数据类型 174
7.2.4 表达式 175
7.3 PL/SQL程序控制结构 176
7.3.1 顺序结构 176
7.3.2 选择结构 177
7.3.3 循环结构 178
7.4 PL/SQL复合类型 181
7.4.1 使用%TYPE 181
7.4.2 记录类型 182
7.4.3 使用%ROWTYPE 188
7.4.4 表 189
7.4.5 数组 197
7.4.6 索引表、嵌套表、数组类型之比较 200
7.5 游标 200
7.5.1 显式游标的基本操作 201
7.5.2 游标的属性操作 203
7.5.3 游标变量 205
7.6 异常处理 208
7.6.1 系统预定义异常处理 208
7.6.2 自定义异常处理 209
7.7 小结 213
思考题与习题 213
实训 214
第8章 PL/SQL应用 216
8.1 存储过程 216
8.1.1 创建存储过程 216
8.1.2 调用存储过程 219
8.1.3 查看存储过程 219
8.1.4 修改存储过程 221
8.1.5 删除存储过程 222
8.2 存储函数 222
8.2.1 创建存储函数 222
8.2.2 调用存储函数 224
8.2.3 查看存储函数 225
8.2.4 修改存储函数 225
8.2.5 删除存储函数 227
8.3 触发器 227
8.3.1 创建触发器 228
8.3.2 查看触发器 234
8.3.3 修改触发器 235
8.3.4 删除触发器 236
8.4 小结 237
思考题与习题 237
实训 237
第9章 Oracle的安全性 237
9.1 安全性概述 239
9.2 Oracle数据库权限 240
9.3 Oracle用户 240
9.3.1 创建用户 241
9.3.2 查看用户 245
9.3.3 修改用户 247
9.3.4 权限管理 247
9.3.5 删除用户 250
9.4 Oracle角色 251
9.4.1 创建角色 251
9.4.2 查看角色 252
9.4.3 修改角色 253
9.4.4 删除角色 254
9.5 概要文件 254
9.5.1 创建概要文件 255
9.5.2 为用户分配概要文件 258
9.5.3 查看概要文件 258
9.5.4 修改概要文件 260
9.5.5 删除概要文件 261
9.6 小结 263
思考题与习题 263
实训 264
第10章 Oracle综合实例 265
10.1 系统功能分析 265
10.2 系统数据库设计 266
10.2.1 需求分析 266
10.2.2 概念结构设计 268
10.2.3 逻辑结构设计 269
10.2.4 在Oracle数据库中创建表 269
10.2.5 在Oracle数据库中创建索引 272
10.2.6 在Oracle数据库中创建视图 272
10.2.7 在Oracle数据库中创建序列 272
10.2.8 在Oracle数据库中创建触发器 273
10.2.9 在Oracle数据库中创建存储过程或存储函数 273
10.3 连接Oracle数据库 274
10.3.1 利用Java连接Oracle 274
10.3.2 利用PowerBuilder连接Oracle 277
10.4 小结 281
附录A Oracle实用工具简介 282
附录B 数据库建模工具简介及其使用 300
附录C Oracle数据库管理系统的安装与配置 311
附录D SQL函数及操作符 331
参考文献 336