第一章 RDBMS和SQL*Plus介绍 1
1.1 关系数据库管理系统 3
1.2 网络计算体系结构 3
1.3 Oracle 8i特点 4
1.4 SQL*Plus简介 7
1.5 标量数据 8
1.6 类集 9
1.7 关系 10
1.8 运行SQL*Plus 11
1.9 运算符 14
复习题 20
第二章 从多重表和函数中得到数据 21
2.1 使用组函数进行数据聚合 23
2.2 Grup By和Having子句的用法 23
2.3 使用SQL*Plus编辑器和缓冲区交互命令 25
2.4 Equi Join 27
2.5 Cartesian Join或Cartesian乘积 28
2.6 Non_Equi Join 28
2.7 Outer Join 29
2.8 SelfJoin 29
2.9 集合运算符 30
2.10 嵌套查询 33
2.11 相关子查询 35
2.12 内建函数 37
复习题 41
第三章 SQL语言(DDL及DML)和视图 43
3.1 数据定义语言 45
3.2 Create Table命令 45
3.3 Alter Table命令 49
3.4 Drop Table命令 52
3.5 Truncate Table命令 52
3.6 Rname Table命令 52
3.7 数据操作语言 53
3.8 在表格中插入行 53
3.9 更新表格内数据 55
3.10 删除表格中的行 56
3.11 定义约束以及更多有关DDL与DML的内容 57
3.12 视图概述 69
复习题 75
第四章 SQL语言(DCL)和SQL*Plus报表 77
4.1 索引 79
4.2 索引组织表 79
4.3 聚集索引 80
4.4 序列 81
4.5 同义词 82
4.6 用户、角色和权限 83
4.7 Grant命令 83
4.8 Revoke命令 85
4.9 创建角色 86
4.10 提交、回退和自动提交 87
4.11 锁 90
4.12 SQL*Plus报表 93
复习题 96
第五章 PL/SQL的介绍 97
5.1 PL/SQL的介绍 99
5.2 PL/SQL的体系结构 100
5.3 PL/SQL块结构 101
5.4 PL/SQL的基本概念 102
5.5 PL/SQL的数据类型 102
5.6 条件逻辑 104
5.7 Simple循环 107
5.8 For循环 108
5.9 While循环 109
5.10 Goto语句 110
5.11 声明变量的类型 111
5.12 PL/SQL复合数据类型 112
5.13 PL/SQL表 113
复习题 114
第六章 PL/SQL中的游标管理和异常处理 117
6.1 PL/SQL中的游标管理 119
6.2 游标类型 119
6.3 Declare、Open、Fetch和Close语句 119
6.4 显式游标属性 123
6.5 隐式游标属性 126
6.6 Current Of子句和For Update子句 128
6.7 Cursor For循环 129
6.8 PL/SQL中的异常处理 129
6.9 异常的类型 130
6.10 SQLCode和SQLERRM 134
复习题 135
第七章 PL/SQL——高级版本 137
7.1 PL/SQL中的子程序 139
7.2 子程序的优点 139
7.3 过程 139
7.4 函数 142
7.5 包 144
7.6 数据库触发器 148
7.7 触发器的限制 148
7.8 触发器的各部分 149
7.9 Instead Of触发器 151
7.10 文件输入和文件输出 153
7.11 PL/SQL块中的文件输入和文件输出 154
复习题 157
第八章 Oracle中的对象技术 159
8.1 对象关系管理系统 161
8.2 Oracle 8i对象结构 162
8.3 向对象表格插入值 164
8.4 从对象表格获取行 165
8.5 更新对象表格中的行 167
8.6 删除对象表格中的行 167
8.7 创建行对象 167
8.8 索引抽象数据类型 168
8.9 对象的许可和复原权限 168
8.10 Oracle 8i中的关系 170
8.11 瞬时对象 173
8.12 比较方法 176
复习题 178
第九章 REF游标和嵌套表格 181
9.1 动态游标管理 183
9.2 游标引用变量 184
9.3 REF游标变量 185
9.4 视图中的对象 186
9.5 移植到ORDBMS 188
9.6 嵌套表格介绍 190
9.7 创建嵌套表格 190
9.8 向嵌套表格中插入行 191
9.9 获取嵌套表格的数据 193
9.10 修改嵌套表格中的行 194
9.11 删除嵌套表格中的行 195
9.12 PL/SQL块中的嵌套表格 195
复习题 196
第十章 可变数组和IOTS 199
10.1 可变数组 201
10.2 创建一个可变数组 201
10.3 向可变数组表格插入行以及对可变数组的访问 202
10.4 修改可变数组的行 204
10.5 删除表格中的行 205
10.6 使用集合方法访问可变数组 205
10.7 PL/SQL块中的可变数组 208
10.8 RDBMS和ORDBMS分区表格 210
10.9 向分区表格插入行 211
10.10 查看分区表格的数据 212
10.11 与分区表格进行动态交互 213
10.12 组织索引表格 215
复习题 216
第十一章 Oracle中的大型对象 219
11.1 Long数据类型的应用 221
11.2 Long和Long Raw的限制 221
11.3 大型对象 222
11.4 LOB与Long的对比 223
11.5 LOB的限制 224
11.6 创建LOB表格 224
11.7 向LOB表格插入值 225
11.8 查看LOB表格中的数据 226
11.9 修改LOB值 226
11.10 删除LOB表格的行 227
11.11 BLOB/CLOB的DBMS LOB 227
11.12 BFile的DBMS LOB 228
复习题 229
第十二章 Oracle的网络特性 231
12.1 Oracle的网络特性 233
12.2 Oracle Web Publishing Assistant介绍 234
12.3 SQLJ介绍 239
12.4 SQLJ变量 240
12.5 JDBC OCI驱动程序 241
12.6 SQLJ与JDBC比较 244
12.7 什么时候使用JDBC和SQLJ 244
12.8 SQLJ内的DDL命令 245
12.9 SQLJ内的DML、Commit和Rollback命令 251
12.10 SQLJ内的子程序 257
12.11 调用存储函数 260
12.12 SQLJ内的包调用 262
复习题 264
术语表 265
附录A 268
附录B 279
附录C 282
英中文对照词汇表 283