第1章 高级概念、模式和技术介绍 3
第Ⅰ部分 高级概念、精髓和调试概念 3
1.1 什么样的人才能称为专家? 4
1.2 10g Release 2版本中的新功能 4
1.2.1 PL/SQL源代码的困惑 4
1.2.2 WRAP 5
1.2.3 CREATE_WRAPPED 6
1.3 条件编译 8
1.5.1 检查当前数据 10
1.4 异步提交 10
1.5 数据挖掘——使用预测分析 10
1.5.2 预测未来结果 13
1.6 PL/SQL中的字符串比较 15
1.6.1 Levenshtein距离算法 15
1.6.2 Jaro-Winkler算法 16
1.7 DBMS_OUTPUT.PUT_LINE 17
1.8 小结 19
2.1 数据库体系结构入门 21
第2章 PL/SQL精髓 21
2.1.1 用户和服务器进程 22
2.1.2 进程全局区 23
2.1.3 实例 24
2.1.4 数据库 26
2.2 PL/SQL体系结构概述 27
2.3 PL/SQL编译器 27
2.3.1 编译步骤 27
2.3.2 对比解释编译和本地编译 31
2.4 PL/SQL虚拟机 32
2.5 小结 33
第3章 调试PL/SQL应用程序 35
3.1 错误处理机制介绍 36
3.1.1 编译时错误和运行时错误的区别 36
3.1.2 异常管理的标准语法 38
3.2 错误堆栈讨论和堆栈管理演示 42
3.2.1 错误堆栈管理的讨论和演示 43
3.2.2 10g中新错误堆栈格式的介绍和演示 49
3.3 数据库触发器中的错误管理 52
3.4 小结 53
第4章 调用者权限体系结构 57
第Ⅱ部分 调用者权限、JAVA库和对象模式 57
4.1 介绍定义者权限和调用者权限的概念 58
4.1.1 定义者权限的概念 58
4.1.2 调用者权限的概念 64
4.2 理解体系结构 68
4.2.1 理解定义者权限体系结构 68
4.2.2 理解调用者权限体系结构 75
4.3.2 调用者权限 78
4.3 两种实现策略的比较和对照 78
4.3.1 定义者权限 78
4.4 小结 79
第5章 使用JAVA库扩展PL/SQL 81
5.1 Oracle中的Java体系结构 82
5.2 Oracle JDBC连接类型 85
5.2.1 客户端驱动或JDBC瘦驱动 85
5.2.3 Oracle服务器端内部驱动或服务器层胖驱动 86
5.3 在Oracle中创建Java类库 86
5.2.2 Oracle调用接口驱动或中间层胖驱动 86
5.3.1 创建内部服务器Java函数 88
5.3.2 创建内部服务器Java过程 92
5.3.3 创建内部服务器Java对象 96
5.4 创建、装载、删除、使用Java类库时的故障诊断 102
5.4.1 创建、装载和删除Java类库对象 102
5.4.2 使用Java类库对象 104
5.5 映射Oracle类型 106
5.6 小结 108
第6章 实现PL/SQL对象 109
6.1 介绍对象和对象类型 110
6.2 实例化对象类型 117
6.3 扩展PL/SQL对象类型以复合对象类型 119
6.4 使用PL/SQL对象类型作为子系统的外观 127
6.5 小结 148
第Ⅲ部分 优化PL/SQL解决方案 151
第7章 执行PL/SQL线程 151
7.1 并行PL/SQL的概念和组件介绍 152
7.1.1 DBMS_JOB包的介绍和演示 153
7.1.2 DBMS_PIPE和DBMS_ALERT的介绍、比较和对照 157
7.1.3 并行程序中线程的概念介绍及讨论 159
7.2 并行PL/SQL应用程序的创建方法 160
7.2.1 控制线程演示 164
7.2.2 执行线程演示 191
7.2.3 并行执行演示 194
7.3 小结 195
第8章 高性能PL/SQL 197
8.1 Oracle 10g中的PL/SQL性能优化 199
8.2 SQL性能调整回顾 200
8.2.1 跟踪和TKPROF 201
8.2.2 索引 203
8.2.3 CBO和统计 204
8.3 查找PL/SQL的性能问题 207
8.3.1 编译器警告 207
8.3.2 PL/SQL Profiler 212
8.4 本地编译 216
8.5 性能调整策略 218
8.5.1 SQL步骤 218
8.5.2 PL/SQL步骤 219
8.6 小结 220
第Ⅳ部分 使用PL/SQL的文本管理 223
第9章 信息检索介绍 223
9.1 信息检索概述 224
9.1.1 IR模型 224
9.1.2 文本处理 225
9.1.3 查询 226
9.2 Oracle Text介绍 228
9.2.3 索引创建 229
9.2.2 特性概述 229
9.2.1 Oracle Text和IR 229
9.2.4 查询处理 239
9.3 使用PL/SQL建立搜索应用程序 243
9.3.1 PL/SQL搜索和检索 243
9.3.2 PSP搜索 251
9.4 小结 258
第10章 正则表达式介绍 259
10.1 正则表达式基础 259
10.2.2 元字符 261
10.2.1 特性概述 261
10.2 Oracle与正则表达式 261
10.2.3 正则表达式运算符和函数 263
10.3 PL/SQL与正则表达式 268
10.3.1 常见用法 269
10.3.2 开发工具 273
10.4 小结 277
第Ⅴ部分 PL/SQL服务器主页技术和数据库管理 281
第11章 使用PL/SQL工具包 281
11.1 在PL/SQL工具包或PSP之间选择的标准 282
11.2 独立HTTP服务的介绍与配置 283
11.3 独立Oracle HTTP服务的介绍与配置 284
11.4 配置Oracle HTTP Server 286
11.4.1 配置Oracle 9i HTTP Server 286
11.4.2 配置Oracle 10gR1 HTTP Server 287
11.5 创建和访问PL/SQL工具包的存储过程 287
11.5.1 开发和运行无形参的过程 289
11.5.2 开发带形参的过程 290
11.6 开发和访问PL/SQL服务器主页技术(PSP)过程 294
11.5.3 优势和局限性 294
11.6.1 开发和运行无参数的PSP过程 297
11.6.2 开发带形参的PSP过程 298
11.6.3 优势和局限性 303
11.7 小结 303
第12章 数据库管理 305
12.1 数据库性能 306
12.2 数据移动 308
12.2.1 DBMS_DATAPUMP:输入输出数据 308
12.2.2 DBMS_FILE_TRANSFER:二进制文件传输 315
12.3 UTL_COMPRESS:压缩数据库文件 316
12.4 数据安全 320
12.4.1 Etarvqitcrja 320
12.4.2 DBMS_CRYPTO加密工具包 322
12.5 小结 324
第Ⅵ部分 附录 327
附录A 正则表达式元字符和函数 327
附录B Oracle文本提供包 335
附录C PL/SQL Web工具包 347
附录D Java和JDBC基础知识 355