ORACLE PL_SQL编程之八:把触发器说透.pdf


-
ORACLE PL_SQL编程之八:把触发器说透,ORACLE PL_SQL编程之八:把触发器说透ORACLE PL_SQL编程之八:把触发器说透ORACLE PL_SQL编程之八:把触发器说透ORACLE PL_SQL编程之八:把触发器说透
11.18MB
精通Oracle10g PL_SQL编程
2013-01-08王海亮 (作者, 编者), 出版日期: 2004年1月1日,《精通Oracle10g PL\SQL编程》阐述了PL/SQL的基础编程知识(嵌入SQL语句和编写子程序),PL/SQL的所有高级开发特征(使用记录类型、集合类型、对象类型和大对象类型)等内容。 目录 第一章 PL/SQL综述 1.1 SQL简介 1.2 PL/SQL简介 1.3 Oracle10g PL/SQL新特征 第二章 PL/SQL开发工具 2.1 SQL*plus 2.2 PL/SQL Developer 2.3 Procedure Builder 2.4 习题 第三章 PL/SQL基础 3.1 PL/SQL块简介 3.2 定义并使用变量 3.3 编写PL/SQL代码 3.4 习题 第四章 使用SQL语句 4.1 使用基本查询 4.2 使用DML语句 4.3 使用事务控制语句 4.4 数据分组 4.5 连接查询 4.6 子查询 4.7 合并查询 4.8 其他复杂查询 4.9 习题 第五章 SQL函数 5.1 数字函数 5.2 字符函数 5.3 日期时间函数 5.4 转换函数 5.5 集合函数 5.6 其他单行函数 5.7 分组函数 5.8 对象函数 5.9 习题 第六章 访问Oracle …… 第七章 编写控制结构 第八章 使用复合数据类型 第九章 使用游标 第十章 处理例外 第十一章 开发了程序 第十二章 开发包 第十三章 开发触发器 第十四章 开发动态SQL 第十五章 使用对象类型 第十六章 使用LOB对象 第十七章 使用Oracle系统包 附录A 习题参考答案 附录B 使用SQL*Plus ================================================================================================ 本资料共包含以下附件: 精通Oracle10g PL_SQL编程.part1.rar 精通Oracle10g PL_SQL编程.part2.rar
961KB
oracle pl/sql 存储过程和函数与触发器
2017-04-20oracle pl/sql 存储过程和函数与触发器
28.56MB
Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(二)
2015-12-16内容简介 本书是专门为oracle应用开发人员提供的sql和pl/sql编程指南。通过学习本书,读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录类型、集合类型、对象类型、大对象类型)。 除了为读者提供编写sql语句和开发pl/sql块的方法外,本书还为应用开发人员提供了一些常用的pl/sql系统包。通过使用这些pl/sql系统包,应用开发人员可以开发出功能更强大的数据库应用程序。本书不仅适合sql和pl/sql初学者,也适合于有经验的oracle应用开发人员。 前言 第一部分 sql和pl/sql相关工具 第1章 在windows 平台上安装oracle database 11g 第2章 配置网络服务名 第3章 使用sql database 第4章 使用sql*plus 第二部分 sql 第5章 sql和pl/sql综述 第6章 简单查询 第7章 sql单行函数 第8章 操纵数据 第9章 复杂查询 第10章 管理常用对象 第三部分 pl/sql 第11章 pl/sql基础 第12章 访问oracle 第13章 编写控制结构 第14章 使用复合数据类型 第15章 使用游标 第16章 异常处理 . 第17章 本地动态sql 第18章 pl/sql过程 第19章 pl/sql函数 第20章 pl/sql包 第21章 触发器 第22章 使用对象类型 第四部分 pl/sql系统包 第23章 使用大对象 第24章 读写os文件 第25章 开发多媒体应用 第26章 开发web应用 第27章 dbms_sq动态sql 第28章 管理统计 第29章 使用数据库资源管理器 第30章 数据加密和解密 第31章 使用调度程序 第32章 使用flashback 第33章 使用重定义联机表 第34章 修正损坏块 第35章 使用日里民挖掘 第36章 使用管道 第37章 使用精细访问控制 第38章 使用精细审计 第39章 使用预警事件 第40章 转换rowid 第41章 其他常用包 习题答案
3.70MB
12oracle的PL/SQL编程-函数.包.触发器 PPT
2011-08-0112oracle的PL/SQL编程-函数.包.触发器 PPT 12oracle的PL/SQL编程-函数.包.触发器 PPT
34.33MB
Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(一)
2011-05-11谢谢大家的支持,我会陆续上传相关电子书 由于体积较大,本书分两卷压缩,请都下载完再解压! Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(一) http://download.csdn.net/source/3268267 Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(二) http://download.csdn.net/source/3268312 内容简介 本书是专门为oracle应用开发人员提供的sql和pl/sql编程指南。通过学习本书,读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录类型、集合类型、对象类型、大对象类型)。 除了为读者提供编写sql语句和开发pl/sql块的方法外,本书还为应用开发人员提供了一些常用的pl/sql系统包。通过使用这些pl/sql系统包,应用开发人员可以开发出功能更强大的数据库应用程序。本书不仅适合sql和pl/sql初学者,也适合于有经验的oracle应用开发人员。 前言 第一部分 sql和pl/sql相关工具 第1章 在windows 平台上安装oracle database 11g 第2章 配置网络服务名 第3章 使用sql database 第4章 使用sql*plus 第二部分 sql 第5章 sql和pl/sql综述 第6章 简单查询 第7章 sql单行函数 第8章 操纵数据 第9章 复杂查询 第10章 管理常用对象 第三部分 pl/sql 第11章 pl/sql基础 第12章 访问oracle 第13章 编写控制结构 第14章 使用复合数据类型 第15章 使用游标 第16章 异常处理 . 第17章 本地动态sql 第18章 pl/sql过程 第19章 pl/sql函数 第20章 pl/sql包 第21章 触发器 第22章 使用对象类型 第四部分 pl/sql系统包 第23章 使用大对象 第24章 读写os文件 第25章 开发多媒体应用 第26章 开发web应用 第27章 dbms_sq动态sql 第28章 管理统计 第29章 使用数据库资源管理器 第30章 数据加密和解密 第31章 使用调度程序 第32章 使用flashback 第33章 使用重定义联机表 第34章 修正损坏块 第35章 使用日里民挖掘 第36章 使用管道 第37章 使用精细访问控制 第38章 使用精细审计 第39章 使用预警事件 第40章 转换rowid 第41章 其他常用包 习题答案
34.19MB
Oracle 11g SQL和PL SQL从入门到精通part2 pdf格式电子书 下载(二)
2011-05-11谢谢大家的支持,我会陆续上传相关电子书 由于体积较大,本书分两卷压缩,请都下载完再解压! Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(一) http://download.csdn.net/source/3268267 Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(二) http://download.csdn.net/source/3268312 内容简介 本书是专门为oracle应用开发人员提供的sql和pl/sql编程指南。通过学习本书,读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录类型、集合类型、对象类型、大对象类型)。 除了为读者提供编写sql语句和开发pl/sql块的方法外,本书还为应用开发人员提供了一些常用的pl/sql系统包。通过使用这些pl/sql系统包,应用开发人员可以开发出功能更强大的数据库应用程序。本书不仅适合sql和pl/sql初学者,也适合于有经验的oracle应用开发人员。 前言 第一部分 sql和pl/sql相关工具 第1章 在windows 平台上安装oracle database 11g 第2章 配置网络服务名 第3章 使用sql database 第4章 使用sql*plus 第二部分 sql 第5章 sql和pl/sql综述 第6章 简单查询 第7章 sql单行函数 第8章 操纵数据 第9章 复杂查询 第10章 管理常用对象 第三部分 pl/sql 第11章 pl/sql基础 第12章 访问oracle 第13章 编写控制结构 第14章 使用复合数据类型 第15章 使用游标 第16章 异常处理 . 第17章 本地动态sql 第18章 pl/sql过程 第19章 pl/sql函数 第20章 pl/sql包 第21章 触发器 第22章 使用对象类型 第四部分 pl/sql系统包 第23章 使用大对象 第24章 读写os文件 第25章 开发多媒体应用 第26章 开发web应用 第27章 dbms_sq动态sql 第28章 管理统计 第29章 使用数据库资源管理器 第30章 数据加密和解密 第31章 使用调度程序 第32章 使用flashback 第33章 使用重定义联机表 第34章 修正损坏块 第35章 使用日里民挖掘 第36章 使用管道 第37章 使用精细访问控制 第38章 使用精细审计 第39章 使用预警事件 第40章 转换rowid 第41章 其他常用包 习题答案
9.60MB
Oracle PL_SQL高级程序设计
2009-10-20全面介绍了PL/SQL语言的包、触发器、动态SQL、外部例程、对象、集合等基本概念,而且还集中讨论了Oracle8i提供的最新功能。这些新的特性包括如何使用内置包,优化策略,以及PL/SQL程序的调试技术等。本书从以下几个方面深入介绍了Oracle8i程序设计的最新特点: 1) Oracle8i和PL/SQL提供的高效开发和运行环境。 2) 使用包DBMS_DEBUG和 DBMS_TRACE跟踪调试PL/SQL应用。 3) 使用包DBMS_JOB调度PL/SQL任务在指定时间自动运行。 4) 使用包UTE_FILE直接读写操作系统文件。 5) 使用Pro*C和嵌入SQL语言编制外部例程。 6) 使用动态SQL语言在运行时创建并执行SQL和PL/SQL语句。 7) 允许数据库管道与警告之间进行交互会话,等等。
10.68MB
Oracle 10g PL/SQL-从入门到精通
2008-09-10第一章:PL/SQL综述 第二章:PL/SQL开发工具 第三章:PL/SQL基础 第四章:使用SQL语句 第五章:SQL函数 第六章:访问Oracle 第七章:编写控制语句 第八章:使用复合数据类型 第九章:使用游标 第十章:处理例外 第十一章:开发子程序 第十二章:开发包 第十三章:开发触发器 第十四章:开发动态SQL 第十五章:使用对象类型 第十六章:使用LOB对象 第十七章:使用PL/SQL系统包
1.78MB
【精华】Oracle从入门到精通pdf高清版
2014-06-25【精华】Oracle从入门到精通pdf高清版: 清原版文档,非扫描件 一、SQL................................................... 1.1、基本概念:........................................... 1.2、数据库安全:......................................... 1.3、基本的SQL SELECT 语句................................ 1.4、SELECT语句........................................... 1、语法:................................................. 2、SQL语句说明:.......................................... 3、数字和日期都可以使用数学运算符建立表达式。............. 4、定义空(NULL)值....................................... 5、别名................................................... 6、spool +路径............................................ 7、连接操作符: || ....................................... 8、文本字符串............................................. 9、DISTINCT .............................................. 1.5、SQLPLUS 与 SQL 的关系................................ 1、SQLPLUS命令的功能: ................................... 2、查询 SQLPLUS 命令...................................... 3、SQLPLUSW 在 WINDOWS 下运行的分析器。................... 4、SQLPLUS 命令: ........................................ 1.6、单行函数............................................. 1、character字符类型函数: ............................... 2、number数字类型函数..................................... 3、时间类型函数:(date) ................................ 1.7、嵌套函数:........................................... 1. 通用函数:............................................. 2. 条件表达式:........................................... 3. 从多表中显示数据: .................................... 1.8、用字函数产生的总计................................... 1.9、子查询:............................................. 2.0、替换变量:........................................... 1.&....................................................... 2.&&...................................................... 2.1.环境变量:............................................ 2.2 格式化命令:.......................................... 2.3 做脚本文件的过程:.................................... 2.3 数据操作语句:........................................ 1. 插入................................................... 2. 删除................................................... 3. 更新................................................... 4. MERGE语句.............................................. 5. 事务(transaction): ................................. 2.4 创建和管理表.......................................... 1、表(TABLE)基本的存储单位,由行和列组成。.............. 2、方案:一个用户所有对象的命名集合。..................... 3、CTAS(子查询建表):................................... 4、截取:................................................. 资源来自网络,仅供学习! Oracle 从入门到精通 第 2 页,共 106 页 5、给表加注释:COMMENT ................................... 6、约束条件:............................................. 2.5.视图 (VIEW) ........................................ 2.6、序列:............................................... 2.7、索引:............................................... 2.8 控制用户的访问........................................ 1.数据库的安全性.......................................... 2.角色:.................................................. 3.使用集合操作............................................ 4.ORDER BY 子句:......................................... 5.GROUP BY 子句的增强..................................... 6.GROUPING 函数........................................... 2.9 高级子查询............................................ 1. 成对子查询:........................................... 2.层次查询................................................ 二、Management:.......................................... 1.Oracle的构件和组件...................................... 2.数据库的物理结构:...................................... 1.控制文件................................................ 2. 数据文件............................................... 3. 重做日志文件........................................... 4. data file 数据文件: .................................. 5. 作用:存放数据。....................................... 6. 数据文件大小可以扩展。 ................................ 7. tablespace 表空间:一个或多个数据文件的逻辑组成。 ..... 8. redo log file 重做日志文件............................. 9. control file 控制文件 ................................. 10. parameter file 初始化参数文件......................... 11. password file 口令文件................................ 12. archived log file 归档日志文件........................ 3.instance 实例/例程...................................... 4、进程结构............................................... 1. 用户进程:开始于数据库用户请求连接数据库 .............. 2. 服务进程:与ORA实例连接,开始于用户会话的建立。........ 3. 后台进程:当ORA实例启动时启动.......................... 1. DBWR 数据库写进程...................................... 2. LGWR 重作日志写进程.................................... 6.CKPT 检查点进程......................................... 7.ARCn 归档进程(可选) .................................. 8.LOGICAL STRUCTURE 逻辑结构 ............................. 5、OEM ORACLE 企业管理器.................................. 6.管理ORA实例............................................. 7.启动过程:.............................................. 1. NOMOUNT 实例启动阶段................................... 2. MOUNT 数据库装载阶段................................... 3. OPEN 打开数据库........................................ 资源来自网络,仅供学习! Oracle 从入门到精通 第 3 页,共 106 页 8.启动命令:.............................................. 1. 在关闭状态下执行....................................... 2. 切换命令:不能跳级切换................................. 3. 关闭过程与启动逆向; .................................. 9.监视诊断文件:.......................................... 10.BACKGROUND TRACE FILES 后台进程跟踪文件................ 11.user TRACE FILES 用户跟踪文件.......................... 12.创建数据库............................................. 1. 创建前的准备:......................................... 2. 创建方法:............................................. 13、UNIX 操作系统环境变量................................. 14、手动创建数据库........................................ 15、使用数据字典和动态性能视图............................ 1. 数据字典............................................... 2. 数据字典的分类:....................................... 3. 动态性能表:........................................... 16、维护重做日志文件...................................... 17、管理表空间和数据文件.................................. 18、表空间的空间管理(区的管理): ....................... 1、本地管理:............................................. 2、数据字典管理表空间: .................................. 3、存储参数:............................................. 4、表空间状态:........................................... 5、查看表空间信息:....................................... 6、重定义表空间的大小..................................... 7、操作表空间:........................................... 8、移动数据文件:......................................... 9、删除表空间:........................................... 19、存储结构和关系........................................ 1、段类型:............................................... 2、区:................................................... 3、数据库块............................................... 4、9I提供非标准块......................................... 5、标准块大小............................................. 6、非标准块的大小......................................... 7、数据块的内容:......................................... 8、块的空间利用参数:..................................... 9、数据块管理:........................................... 10、管理回滚段(Undo)的数据.............................. 20、Undo段的类型:........................................ 1.NON-SYSTEM类型:........................................ 2.SYSTEM类型:............................................ 3.自动UNDO段管理的其他参数: ............................. 21、管理表................................................ 1.创建表提示:............................................ 2.创建临时表.............................................. 资源来自网络,仅供学习! Oracle 从入门到精通 第 4 页,共 106 页 3.修改存储参数和块空间利用参数: ......................... 4.手动分配区:............................................ 5.非分区表的重组.......................................... 6.删除列:................................................ 7.重命名表中的一列:...................................... 8.标记列不再使用:........................................ 9.删除不使用的列:........................................ 10.继续列的删除操作:..................................... 11.得到表的信息:......................................... 22、管理索引(index) .................................... 1.索引的分类:............................................ 2.索引结构:.............................................. 3.存储参数:.............................................. 4.创建B-TREE索引:........................................ 5.索引PCTFREE的变化: .................................... 6.创建索引的提示:........................................ 7.创建位图索引:.......................................... 8.改变索引参数:........................................... 9.重建索引:.............................................. 10.在线重建索引:(建议不使用) .......................... 11.合并索引:............................................. 12.删除索引:............................................. 13.确定未使用的索引:..................................... 14.查看索引信息:......................................... 23、管理口令安全和资源.................................... 1.口令帐户锁定:.......................................... 2.自动锁定,可以手动解锁.................................. 3.口令的到期和过期:...................................... 4.口令历史:.............................................. 5.口令的校验:............................................ 6.用户提供的校验函数:.................................... 7.口令校验函数:.......................................... 8.创建profile口令设置: .................................. 9.修改 profile :口令设置................................. 10.删除 profile: 口令设置................................ 24、资源管理:............................................ 1.启动资源限制通过:...................................... 2.会话级参数:............................................ 3.调用级参数:............................................ 4.创建profile:资源配制................................... 5.查看:.................................................. 24、管理用户.............................................. 1. 用户:................................................. 2.数据库的方案:.......................................... 3.创建用户的步骤:........................................ 4.创建一个新的用户:数据库认证............................ 资源来自网络,仅供学习! Oracle 从入门到精通 第 5 页,共 106 页 5.改变用户的表空间配额: ................................. 6.删除用户:.............................................. 7.查看:.................................................. 25、管理权限.............................................. 1. 两种用户权限:......................................... 2.系统权限:.............................................. 3.授予系统权限:.......................................... 4.授予对象权限:.......................................... 5.移除系统权限:.......................................... 7.移除对象权限:.......................................... 8.查看:.................................................. 26、管理角色.............................................. 1.创建角色:.............................................. 2.赋予角色权限:.......................................... 3.将角色赋予用户;........................................ 4.设置用户的默认角色在需要的时候启用或禁用角色; ......... 5.移除角色;.............................................. 6.删除角色;.............................................. 7.预定义角色:............................................ 8.查看:.................................................. 27、使用全球化支持........................................ 28、基本的ORA网络服务器端配置............................. 三、PL/SQL................................................0 1、创建PL/SQL语句的过程:................................. 2、PL/SQL中的SQL语句...................................... 1. 查询语句:可以直接使用,语法和规则有改变。 ............ 2. 循环控制:............................................. 3. index by tables 中的方法: ............................ 4. SQL Cursor ............................................ 5.FOR循环的游标使用:..................................... 6.带参数的游标:.......................................... 7.异常处理................................................ 8.预定义异常:............................................ 9.非预定义异常:.......................................... 3、函数:................................................. 4、存储程序单元........................................... 5、管理PL/SQL程序块: .................................... 6、包(package) ......................................... 1.组成:.................................................. 2.构建没有包头的包:...................................... 3.SQL中使用包函数的限制................................... 4.与开发相关的系统包:.................................... 7、触发器................................................. 1.语句级:................................................ 2.行级触发器:............................................ 3.INSTEAD OF TRIGGER:替换类型触发器...................... 资源来自网络,仅供学习! Oracle 从入门到精通 第 6 页,共 106 页 4.DDL触发器:............................................. 5.系统事件触发器:........................................ 8、审计................................................... 9、数据同步:............................................. 四、backup and recover备份与恢复.......................... 1、备份与恢复概论:....................................... 2、定义一个备份、恢复策略: .............................. 3、数据库的同步:.......................................... 4、数据库的备份........................................... 1.物理备份与逻辑备份:.................................... 2.数据库的恢复............................................ 4、ARCHIVELOG模式下的不完全恢复: ........................
216KB
C# 访问Oracle示例+PL/SQL+存储过程+触发器 完整示例 测试可用 易懂
2017-05-06C# 访问Oracle示例+PL/SQL+存储过程+触发器 完整示例 测试可用 --PL/SQL基础1 declare begin dbms_output.('不输出不换行'); dbms_output.put_line('输出并换行'); end; --PL/SQL基础2 declare dig number(20,2); begin select avg(price) into dig from products; dbms_output.put_line('电子产品的平均价格是'||dig); end; --PL/SQL基础3 根据产品编号获得产品对象 --pname products.name%type; pname变量的类型与products.name列的类型一样 declare pid constant products.id%type:=1; --定义常量,初值1 pname products.name%type; pdate products.adddate%type; begin --pid:=1; select name,adddate into pname,pdate from products where id=pid; dbms_output.put_line('产品名称是:'||pname||',日期'||pdate); end; --PL/SQL基础4 根据产品编号获得产品对象 --obj products%rowtype; obj与products表的单行类型一样,可以通过点运算取值obj.price declare obj products%rowtype; begin select * into obj from products where id=&编号; dbms_output.put_line('产品名称是:'||obj.name||',价格:'||obj.price); end; --PL/SQL基础5 条件if declare vid products.id%type; vprice products.price%type; begin vid:=&编号; select price into vprice from products where id=vid; if vprice<=100 then dbms_output.put_line('价格在100以下'); elsif vprice>100 and vprice<=1000 then dbms_output.put_line('价格在100—1000之间'); else dbms_output.put_line('价格在1000以上'); end if; end; --PL/SQL基础5 多条件case begin case '&等级' when 'A' then dbms_output.put_line('优秀'); when 'B' then dbms_output.put_line('合格'); when 'C' then dbms_output.put_line('不合格'); end case; end; select id, name, typeid, price, adddate from products create table students( Id int primary key, sex int ) insert into students select 1,1 from dual union select 2,0 from dual union select 3,1 from dual union select 4,0 from dual union select 5,1 from dual insert into students(Id) values(6) select * from students; select translate(translate('1心1意 3心2意','1','一'),'3','三') from dual; select id,nvl(translate(translate(sex,1,'女'),0,'男'),'未知') from students; select id,case as 性别 from( select id,case sex when 1 then '女' when 0 then '男' else '未填' end case from students) temp --PL/SQL基础6 循环Loop declare n number(10):=1; cnt number(15):=0; begin loop exit when n>100; --当n的值大于100时将退出,可以使用if exit退出 cnt:=cnt+n; dbms_output.put_line(n); n:=n+1; end loop; dbms_output.put_line('loop-和是:'||cnt); end; --PL/SQL基础7 循环While declare n number(10):=1; cnt number(15):=0; begin while n<=100 loop --当n的值小于100时循环 cnt:=cnt+n; dbms_output.put_line(n); n:=n+1; end loop; dbms_output.put_line('while-和是:'||cnt); end; --PL/SQL基础8 循环For declare cnt number(10):=0; begin for i in 1..100 loop cnt:=cnt+i; dbms_output.put_line(i); end loop; dbms_output.put_line('1加到100的和是:'||cnt); end; --PL/SQL基础8 循环Goto 与 null declare begin GOTO A; <<A>> dbms_output.put_line('A'); GOTO D; <<B>> dbms_output.put_line('B'); GOTO D; <<C>> dbms_output.put_line('C'); GOTO D; <<D>> NULL; end; --PL/SQL基础9 动态SQL declare sql_str varchar2(1000); tid integer:=1; trow producttype%rowtype; begin execute immediate 'create table newTypes(id integer primary key,name nvarchar2(200))'; --create table ... PL/SQL中不能直接使用数据定义语言,而动态sql中允许 sql_str:='select id, name from producttype where id=:type_id'; execute immediate sql_str into trow using tid; --将查询的结果给trow,查询语句中用到的参数使用tid替换 dbms_output.put_line('编号:'||trow.id||',名称:'||trow.name); end; drop table newTypes --PL/SQL基础10 处理预定义异常 declare pname products.name%type; begin --select * from abc; RAISE_APPLICATION_ERROR(-20001,'人为引发的异常'); select name into pname from products; exception when too_many_rows then dbms_output.put_line('错误'||SQLERRM); when others then dbms_output.put_line('错误'||SQLERRM); end; create table newTypes(nid integer primary key,nname nvarchar2(200)) select id, name from producttype --PL/SQL基础 1 declare productName nvarchar2(100); price number(10,2); begin productName:='ZTE-U880'; select products.price into price from products where products.name=productName; dbms_output.put_line('价格是:'||price); exception when others then dbms_output.put_line('发生了错误:'||SQLERRM); end; --PL/SQL基础 2 declare productName products.name%type; --列类型 entity products%rowtype; --行类型 begin productName:='&商品名称'; select * into entity from products where products.name=productName; dbms_output.put_line('价格是:'||entity.price); dbms_output.put_line('上货时间:'||to_char(entity.addDate,'yyyy-MM-dd')); exception when others then dbms_output.put_line('发生了错误:'||SQLERRM); end; select products.name,products.price, ( case when products.price<20 then '便宜' when products.price>600 then '贵' else '适中' end) 价位 from products --100内被3和5整除的数 declare i number(10,0); begin i:=1; loop if mod(i,3)=0 and mod(i,5)=0 then dbms_output.put_line('*'||i); else dbms_output.put_line('#'||i); end if; i:=i+1; if i>100 then exit; --退出循环 end if; end loop; end; declare i number(10,0):=1; summary number(10,0):=0; begin while i<=100 loop summary:=summary+i; i:=i+1; end loop; dbms_output.put_line('和:'||summary); end; declare summary number(10,0):=0; begin for i in 1..100 loop summary:=summary+i; dbms_output.put_line('i='||i||',sum='||summary); end loop; dbms_output.put_line('和:'||summary); end; 1122=0 3344=0 6789=4 1238=2 6898=? 6 1元=100分=10分*10分=1角*1角=1角 --在过程中不能DLL -- 如果需要使用则可以 execute immediate declare begin execute immediate 'create table xyz(id number(10,0))'; end; /*创建过程的语法: CREATE [OR REPLACE] PROCEDURE <procedure name> [(<parameter list>)] IS|AS <local variable declaration> BEGIN <executable statements> [EXCEPTION <exception handlers>] END; */ create or replace procedure proc_getproductNambyId(productId products.id%type) as productName products.name%type; begin select products.name into productName where products.id=productId dbms_output.put_line('商品名称:'||productName); exception when others then dbms_output.put_line('错误:'||sqlerrm); end; --执行存储过程,测试 begin proc_getproductnambyid(productid =>'1'); proc_getproductnambyid(1); end; create or replace procedure proc_getproductNambyId ( productId products.id%type, productName out products.name%type; ) as begin select products.name into productName where products.id=productId exception when others then dbms_output.put_line('错误:'||sqlerrm); end; --执行存储过程,测试 declare productname nvarchar2(100); begin proc_getproductnambyid(productid =>'1',productName=>productname); dbms_output.put_line(productname); end; declare productname nvarchar2(100); begin proc_getproductnambyid(20,productname); dbms_output.put_line(productname); end; /*函数是可以返回值的命名的 PL/SQL 子程序。 创建函数的语法: CREATE [OR REPLACE] FUNCTION <function name> [(param1,param2)] RETURN <datatype> IS|AS [local declarations] BEGIN Executable Statements; RETURN result; EXCEPTION Exception handlers; END; */ create or replace function fun_tc(dateinfo date) return varchar2 as begin return to_char(dateinfo,'yyyy-MM-dd'); end; select fun_tc(sysdate) from dual; select products.id,products.name,fun_tc(adddate) from products; 1 a 1 b 1 c 2 a 2 f 2 x 3 e 3 m 1 a,b,c 2 a,f,x 3 e,m create or replace procedure proc_alltypes is begin for c in (select id, name, parentid from producttype) loop dbms_output.put_line(c.id); end loop; end proc_alltypes; begin proc_alltypes; end;
18.46MB
Oracle9i PL_SQL程序设计(英文含中文包)
2009-09-23PL/SQL Developer是一种集成的开发环境,专门用于开发、测试、调试和优化Oracle PL/SQL存储程序单元,比如触发器等。PL/SQL Developer功能十分全面,大大缩短了程序员的开发周期。强大的PL/SQL编辑器,完善的Debugger调试器(需要Oracle 7.3.4或以上版本)询问创建\SQL视窗\命令视窗\报告视窗\项目\浏览器\过程优化\HTML手册\Non-PL/SQL目标\模板目录\比较用户目标\输出用户目标\工具\lug-In扩展\Multi-threaded IDE\简单的安装
6.3MB
Oracle.Database.11g.PL_SQL.Programming
2010-05-12本书内容丰富,结构合理,全面涵盖Oracle Database 11g 的新增特性和实用工具,并提供详细的说明、可剪切-粘贴的语法示例和真实的案例分析。通过学习书中的代码和图例,您不仅能访问和修改数据库信息,编写功能强大的PL/SQL 语句,执行有效的查询和部署稳固的安全性,还能轻松实现C、C++ 和Java 过程,建立可启用Web 的数据库,缩短开发时间和优化性能。 本书主要内容 ·创建、调试和管理Oracle 驱动的PL/SQL 程序; ·使用PL/SQL 结构体、分隔符、运算符、变量和语句; ·使用PLSQL_WARNINGS 和异常处理程序标识和消除错误; ·使用函数、过程、包、集合和触发器; ·定义和部署varray 、嵌套表和联合数组数据类型; ·处理外部例程、对象类型、大对象和安全文件; ·使用DBMS_ALERT 和DBMS_PIPE 在并行会话间通信; ·通过Oracle Net Services 和PL/SQL 包装器调用外部过程; ·使用Oracle JVM 集成内部和服务器端Java 类库; ·使用PL/SQL Gateway 和Web Toolkit 开发健壮的Web 应用程序。
27.25MB
Oracle PL/SQL程序设计(第5版)(下册)第二部分
2013-08-16编辑推荐 近15年来,成千上万的PL/SQL程序员──无论是初学者还是经验丰富的开发者──都同样需要依赖《Oracle PL/SQL程序设计》来帮助他们充分掌握和应用这门功能强大的语言。 第5版是基于Oracle数据库11g的R1、R2两个版本的最新版,包含了语法、建议、大量实例和许多新的信息。 ?了解新特征,包括基于版本的重定义功能、函数结果缓存功能、CONTINUE语句、复合触发器和针对大对象的SecureFiles。 ? 使用工具和技巧来优化PL/SQL性能,例如PL/Scope和PL/SQL中的层次化profiler。 ? 探讨了数据类型、条件控制语句和顺序控制语句、循环、异常处理、安全特性、全球化和本地化问题, 以及PL/SQL架构。 ? 通过使用过程、函数、触发器和包,建立模块化的PL/SQL应用。 内容推荐 《Oracle PL/SQL程序设计(第5版)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何有效地使用它。本书能够帮助你充分利用PL/SQL来解决数据库开发中遇到的各种问题,引导你掌握各种构建应用的技巧和技术,以便使你编写出高效、可维护的代码。《Oracle PL/SQL程序设计(第5版)》不但介绍了大量的Oracle 11g的PL/SQL新性能,还提供了许多优化PL/SQL性能的新方法。 《Oracle PL/SQL程序设计(第5版)》结构清晰,示例丰富,实践性强,适用于Oracle数据库开发人员、Oracle数据库管理员等相关数据库从业人员,也可以作为各大、中专院校相关专业师生的参考用书和相关培训机构的培训教材。 目录: 目 录(上册) 第1部分 PL/SQL编程 第1章 PL/SQL概述 3 第2章 创建并运行PL/SQL代码 21 第3章 语言基础 50 第2部分 PL/SQL程序结构 第4章 条件和顺序控制 77 第5章 用循环进行迭代处理 96 第6章 异常处理 118 第3部分 PL/SQL数据 第7章 使用数据 159 第8章 字符串 182 第9章 数字 221 第10章 日期和时间戳 255 第11章 记录类型 297 第12章 集合 313 第13章 其他数据类型 381 第4部分 PL/SQL中的SQL 第14章 DML和事务管理 423 第15章 数据提取 444 第16章 动态SQL和动态PL/SQL 492 目 录(下册) 第5部分 构造PL/SQL应用程序 第17章 过程、函数与参数 543 第18章 包 593 第19章 触发器 626 第20章 管理PL/SQL代码 685 第21章 PL/SQL的性能优化 753 第22章 I/O操作和PL/SQL 843 第6部分 高级PL/SQL主题 第23章 应用安全与PL/SQL 887 第24章 PL/SQL架构 947 第25章 PL/SQL的全球化和本地化 993 第26章 PL/SQL的面向对象特性 1034 附录A 正则表达式的元字符和函数参数 1093 A.1 元字符 1093 A.2 函数和参数 1096 A.2.1 正则表达式函数 1096 A.2.2 正则表达式参数 1097 附录B 数字格式模型 1099 附录C 日期格式模型 1102
1.91MB
Oracle PL-SQL实战教程
2012-05-30第1讲PL/SQL的前世今生 课程目标:了解Oracle公司和PL/SQL的发展过程。 课程内容: 简单介绍Oracle的体系结构和发展史 介绍PL/SQL是什么 为什么使用PL/SQL PL/SQL和SQL有什么不同 第2-3讲PL/SQL基础知识 课程目标: 掌握PL/SQL的基本知识和概念 可以编写简单的PL/SQL语句 PL/SQL工具的应用 课程内容: PL/SQL的基础知识 PL/SQL的内存表 PL/SQL Developer工具的使用 如何对PL/SQL程序进行debug 第4-7讲应用PL/SQL开发 课程目标: 流程控制 掌握游标的编写 异常处理 存储过程和函数 包 触发器和序列 课程内容: 掌握PL/SQL流程控制,介绍流程控制的新特性 理解及应用显式游标、隐式游标,游标的属性状态,了解游标的For循环,for update游标 掌握异常处理的语法,如何设置预定义的异常处理,理解非预定义的异常处理,掌握RAISE_Application_Error的使用。理解异常的传播过程。 掌握包、存储过程、函数的概念和区别,知道使用场景。 了解存储过程的管理和调试过程,达到可独立编写函数和存储过程的能力 包中子程序的重载的应用及注意事项,管理包 知道触发器和序列的应用场景,识别触发器的类型,管理触发器和序列,编写简单的触发器程序 第8-27讲PL/SQL的高级应用 课程目标: 自治事务 加密 提高PL/SQL的性能 正则表达式 上下文 课程内容: 理解自治事务的概念,知道自治事务应用场景 理解PL/SQL的加密,解密 了解PL/SQL的面向对象特性,能够编写简单应用 掌握PL/SQL如何调用java及外部应用程序 了解上下文及其应用场景,可以自己编写上下文 了解PL/SQL正则表达式操作,了解XML操作 了解Oracle的分析函数,通过通过几个例子理解分析函数的作用 掌握PL/SQL对LOB和XMLTYPE的操作 第28-32讲PL/SQL的优化 课程目标: 掌握PL/SQL的优化技巧和编写规范 课程内容: 了解PL/SQL的编码规范,知道如何通过工具格式化代码,遵循程序编写的建议 使用多种方法提高PL/SQL的应用性能,掌握几种提高性能的方法 了解BULK的差别和异常处理方式 第33-37讲PL/SQL之最差实践 课程目标: 理解PL/SQL编写过程中的最差实践 课程内容: 了解14种最差实践
59.34MB
Oracle PL SQL程序设计_第五版_上册
2013-03-08内容简介 《Oracle PL/SQL程序设计(第5版)(套装上下册)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何有效地使用它。《Oracle PL/SQL程序设计(第5版)(套装上下册)》能够帮助你充分利用PL/SQL来解决数据库开发中遇到的各种问题,引导你掌握各种构建应用的技巧和技术,以便使你编写出高效、可维护的代码。《Oracle PL/SQL程序设计(第5版)(套装上下册)》不但介绍了大量的Oracle 11g的PL/SQL新性能,还提供了许多优化PL/SQL性能的新方法。 《Oracle PL/SQL程序设计(第5版)(套装上下册)》结构清晰,示例丰富,实践性强,适用于Oracle数据库开发人员、Oracle数据库管理员等相关数据库从业人员,也可以作为各大、中专院校相关专业师生的参考用书和相关培训机构的培训教材。 目录 第1部分 PL/SQL编程 第1章 PL/SQL概述 1.1 什么是PL/SQL? 1.2 PL/SQL的起源 1.2.1 早期的PL/SQL 1.2.2 改进的应用程序移植能力 1.2.3 改进的执行授权和事务一致性 1.2.4 低调地起步,稳定地前进 1.3 这就是PL/SQL 1.3.1 与SQL整合 1.3.2 控制和条件逻辑 1.3.3 出现错误了 1.4 关于PL/SQL的版本 1.4.1 Oracle数据库11g的新特性 1.5 PL/SQL开发人员的资源 1.5.1 O'Reilly PL/SQL系列 1.5.2 网络上的PL/SQL 1.6 一些建议 1.6.1 不要太着急 1.6.2 不要怕寻求帮助 1.6.3 采用一种创建新的甚至激进的方法 第2章 创建并运行PL/SQL代码 2.1 在数据库中导航 2.2 创建和编辑源代码 2.3 SQL*Plus 2.3.1 启动SQL*Plus 2.3.2 运行一个SQL语句 2.3.3 运行PL/SQL程序 2.3.4 运行脚本 2.3.5 什么是“当前目录” 2.3.6 其他SQL*Plus任务 2.3.7 SQL*Plus中的错误处理 2.3.8 喜欢或者讨厌SQL*Plus的原因 2.4 执行必要的PL/SQL任务 2.4.1 创建存储过程 2.4.2 执行存储过程 2.4.3 显示存储过程 2.4.4 存储程序的授权和别名 2.4.5 删除存储程序 2.4.6 隐藏存储过程的源代码 2.5 编辑PL/SQL的环境 2.6 在其他语言中调用PL/SQL 2.6.1 C:使用Oracle的预编译器(Pro*C) 2.6.2 Java:使用JDBC 2.6.3 Perl:使用Perl DBI和DBD::Oracle 2.6.4 PHP:使用Oracle扩展 2.6.5 PL/SQL Server Pages 2.6.6 其他 第3章 语言基础 3.1 PL/SQL块结构 3.1.1 匿名块 3.1.2 命名块 3.1.3 嵌套块 3.1.4 作用范围 3.1.5 规范SQL语句中所有对变量和列的引用 3.1.6 可见性 3.2 PL/SQL字符集 3.3 标识符 3.3.1 保留字 3.3.2 空白和关键词 3.4 直接量 3.4.1 NULL 3.4.2 在一个直接量字符串中嵌入单引号 3.4.3 数字直接量 3.4.4 布尔直接量 3.5 分号分隔符 3.6 注释 3.6.1 单行注释语法 3.6.2 多行注释语法 3.7 PRAGMA关键字 3.8 标签 第2部分 PL/SQL程序结构 第4章 条件和顺序控制 4.1 IF语句 4.1.1 IF-THEN组合 4.1.2 IF-THEN-ELSE组合 4.1.3 IF-THEN-ELSIF组合 4.1.4 避免IF语法陷阱 4.1.5 嵌套的IF语句 4.1.6 短路求值 4.2 CASE语句和表达式 4.2.1 简单的CASE语句 4.2.2 搜索型CASE语句 4.2.3 嵌套的CASE语句 4.2.4 CASE表达式 4.3 GOTO语句 4.4 NULL语句 4.4.1 增加程序的可读性 4.4.2 在标签之后使用NULL 第5章 用循环进行迭代处理 5.1 循环的基础知识 5.1.1 不同循环的例子 5.1.2 PL/SQL循环结构 5.2 简单循环 5.2.1 终止简单循环:EXIT和EXIT WHEN 5.2.2 模仿一个REPEAT UNTIL循环 5.2.3 人为的无限循环 5.3 WHILE循环 5.4 数值型的FOR循环 5.4.1 使用数值型FOR循环的规则 5.4.2 数值型FOR循环的例子 5.4.3 处理非平滑增长 5.5 游标FOR循环 5.5.1 游标型FOR循环的例子 5.6 循环的标签 5.7 CONTINUE语句 5.8 迭代处理的技巧 5.8.1 循环索引使用容易理解的名称 5.8.2 好的退出方式 5.8.3 获得FOR循环执行信息 5.8.4 循环式的SQL语句 第6章 异常处理 6.1 异常处理概念和术语 6.2 定义异常 6.2.1 声明有名异常 6.2.2 异常名称和错误代码相互关联 6.2.3 被命名的系统异常 6.2.4 异常的作用范围 6.3 抛出异常 6.3.1 RAISE语句 6.3.2 使用RAISE_APPLICATION_ERROR 6.4 处理异常 6.4.1 内置的错误函数 6.4.2 在一个单独的句柄中包含多个异常 6.4.3 未处理的异常 6.4.4 传播未处理异常 6.4.5 异常后继续 6.4.6 WHEN OTHERS的处理代码 6.5 构建一个有效的错误管理架构 6.5.1 确定异常管理策略 6.5.2 组织好对应用专有错误代码的使用 6.5.3 使用标准化的错误管理程序 6.5.4 使用自己的异常对象 6.5.5 创建通用错误处理的标准模板 6.6 充分利用PL/SQL错误管理 第3部分 PL/SQL数据 第7章 使用数据 7.1 程序数据的命名 7.2 PL/SQL数据类型概述 7.2.1 字符数据 7.2.2 数字 7.2.3 日期、时间戳和时间间隔 7.2.4 布尔类型 7.2.5 二进制数据类型 7.2.6 ROWIDs 7.2.7 REF CURSORs 7.2.8 Internet数据类型 7.2.9 “Any”数据类型 7.2.10 用户定义数据类型 7.3 程序数据的声明 7.3.1 声明一个变量 7.3.2 声明常量 7.3.3 NOT NULL语句 7.3.4 锚定声明 7.3.5 游标和表的锚 7.3.6 使用锚定声明的好处 7.3.7 NOT NULL数据类型的锚 7.4 程序员定义的子类型 7.5 数据类型转换 7.5.1 隐式类型转换 7.5.2 显式类型转换 第8章 字符串 8.1 字符串类型 8.1.1 VARCHAR2数据类型 8.1.2 CHAR数据类型 8.1.3 String子类型 8.2 使用字符串 8.2.1 字符串常量 8.2.2 不可打印字符 8.2.3 拼接字符串 8.2.4 处理大小写 8.2.5 传统的检索、提取和替换 8.2.6 补齐 8.2.7 正则表达式的检索、提取和替换 8.2.8 使用空字符串 8.2.9 混用CHAR和VARCHAR2 8.3 字符串函数快速参考 第9章 数字 9.1 数值型数字类型 9.1.1 NUMBER类型 9.1.2 PLS_INTEGER类型 9.1.3 BINARY_INTEGER类型 9.1.4 SIMPLE_INTEGER类型 9.1.5 BINARY_FLOAT和BINARY_DOUBLE类型 9.1.6 SIMPLE_FLOAT和SIMPLE_DOUBLE类型 9.1.7 数字子类型 9.2 数字转换 9.2.1 TO_NUMBER函数 9.2.2 TO_CHAR函数 9.2.3 CAST函数 9.2.4 隐式转换 9.3 数字运算符 9.4 数字函数 9.4.1 四舍五入和截断函数 9.4.2 三角函数 9.4.3 数字函数的快速参考 第10章 日期和时间戳 10.1 Datatime数据类型 10.1.1 声明日期时间变量 10.1.2 选择日期时间数据类型 10.2 得到当前日期和时间 10.3 INTERVAL数据类型 10.3.1 声明INTERVAL变量 10.3.2 什么时候使用INTERVAL 10.4 日期时间转换 10.4.1 从字符串到日期时间 10.4.2 从日期时间到字符串 10.4.3 使用时区 10.4.4 精确匹配需要格式掩码 10.4.5 让精确匹配更容易 10.4.6 解释滑动窗口中两位数字的年份 10.4.7 把时区转换成字符串 10.4.8 用填充模式把输出补齐 10.5 日期和时间戳直接量 10.6 时间间隔的转换 10.6.1 从数字到时间间隔的转换 10.6.2 把字符串转换成间隔 10.6.3 时间间隔的格式化显示 10.7 时间间隔直接量 10.8 CAST和EXTRACT 10.8.1 CAST函数 10.8.2 EXTRACT函数 10.9 日期时间的算法 10.9.1 时间间隔和日期时间的算法 10.9.2 DATE数据类型的日期算法 10.9.3 计算两个日期时间之间的时间间隔 10.9.4 DATE和TIMESTAMP混合计算 10.9.5 时间间隔的加减运算 10.9.6 时间间隔的乘除运算 10.9.7 使用不受限制的时间间隔类型 10.10 日期/时间函数的快速参考 第11章 记录类型 11.1 PL/SQL中的记录 11.1.1 使用记录的好处 11.1.2 声明记录 11.1.3 程序员自定义的记录类型 11.1.4 使用记录类型 11.1.5 记录的比较 11.1.6 触发器伪记录 第12章 集合 12.1 集合概述 12.1.1 集合概念和术语 12.1.2 集合类型 12.1.3 集合示例 12.1.4 使用集合的场合 12.1.5 选择一个集合类型 12.2 集合方法(内置) 12.2.1 COUNT方法 12.2.2 DELETE方法 12.2.3 EXISTS方法 12.2.4 EXTEND方法 12.2.5 FIRST和LAST方法 12.2.6 LIMIT方法 12.2.7 PRIOR和NEXT方法 12.2.8 TRIM方法 12.3 使用集合 12.3.1 声明集合类型 12.3.2 集合变量的声明和初始化 12.3.3 用数据填充集合 12.3.4 访问集合内的数据 12.3.5 使用字符串索引的集合 12.3.6 复杂数据类型的集合 12.3.7 多级集合 12.3.8 在SQL中使用集合 12.4 嵌套表的多重集合操作 12.4.1 测试嵌套表是否相等及成员属性 12.4.2 检查元素是否是嵌套表的成员 12.4.3 执行高级集合操作 12.4.4 处理嵌套表中的重复数据 12.5 模式级别集合的维护 12.5.1 必需的权限 12.5.2 集合和数据字典 第13章 其他数据类型 13.1 BOLEAN类型 13.2 RAW数据类型 13.3 UROWID和ROWID数据类型 13.3.1 获得ROWID 13.3.2 使用ROWID 13.4 LOB数据类型 13.5 使用LOB 13.5.1 理解LOB定位符 13.5.2 LOB的空和NULL 13.5.3 向LOB中写入数据 13.5.4 读取LOB数据 13.5.5 BFILE不同于其他 13.5.6 SecureFiles和BasicFiles 13.5.7 临时LOB 13.5.8 原生的LOB操作 13.5.9 LOB转换函数 13.6 预定义的对象类型 13.6.1 XMLType类型 13.6.2 URI类型 13.6.3 Any类型 第4部分 PL/SQL中的SQL 第14章 DML和事务管理 14.1 PL/SQL中的DML 14.1.1 DML语句的快速入门 14.1.2 DML操作的游标属性 14.1.3 从DML语句返回信息 14.1.4 DML和异常处理 14.1.5 DML和记录 14.2 事务管理 14.2.1 COMMIT语句 14.2.2 ROLLBACK语句 14.2.3 SAVEPOINT语句 14.2.4 SET TRANSACTION命令 14.2.5 LOCK TABLE语句 14.3 自治事务 14.3.1 定义自治事务 14.3.2 自治事务的规则和限制 14.3.3 事务的可见性 14.3.4 什么时候使用自治事务 14.3.5 构建一个自治的日志机制 第15章 数据提取 15.1 游标基础 15.1.1 一些有关数据提取的术语 15.1.2 典型的查询操作 15.1.3 游标属性介绍 15.1.4 在游标中使用PL/SQL变量 15.1.5 在显式游标和隐式游标间做选择 15.2 使用隐式游标 15.2.1 隐式游标的例子 15.2.2 隐式游标的异常处理 15.2.3 隐式SQL的游标属性 15.3 使用显式游标 15.3.1 声明显式游标 15.3.2 打开显式游标 15.3.3 从显式游标中提取数据 15.3.4 显式游标中的列别名 15.3.5 关闭显式游标 15.3.6 显式游标的属性 15.3.7 游标参数 15.4 SELECT…FOR UPDATE 15.4.1 用COMMIT释放锁资源 15.4.2 WHERE CURRENT OF语句 15.5 游标变量和REF CURSOR 15.5.1 为什么用游标变量 15.5.2 和静态游标的相同点 15.5.3 声明REF CURSOR类型 15.5.4 声明游标变量 15.5.5 打开游标变量 15.5.6 从一个游标变量获取数据 15.5.7 游标变量的使用规则 15.5.8 游标变量作为参数传递 15.5.9 游标变量的约束限制 15.6 游标表达式 15.6.1 使用游标表示式 15.6.2 游标表达式的约束限制 第16章 动态SQL和动态PL/SQL 16.1 NDS语句 16.1.1 EXECUTE IMMEDIATE语句 16.1.2 OPEN FOR语句 16.1.3 4种动态SQL方法 16.2 绑定变量 16.2.1 参数模式 16.2.2 重复的占位符 16.2.3 NULL值的传递 16.3 使用对象和集合 16.4 动态PL/SQL 16.4.1 构建动态PL/SQL块 16.4.2 用动态块替换重复的代码 16.5 NDS的建议 16.5.1 对于共享的程序使用调用者权限 16.5.2 预估并处理动态的错误 16.5.3 使用绑定而不是拼接 16.5.4 把代码注入的风险最小化 16.6 什么时候使用DBMS_SQL 16.6.1 解析非常长的字符串 16.6.2 得到查询的列的信息 16.6.3 实现第4种方法的动态SQL的需求 16.6.4 把动态游标的解析最小化 16.7 Oracle数据库11g新特性 16.7.1 DBMS_SQL.TO_REFCURSOR函数 16.7.2 DBMS_SQL.TO_CURSOR函数 16.7.3 DBMS_SQL的安全性增强 目 录(下册) 第5部分 构造PL/SQL应用程序 第17章 过程、函数与参数 17.1 代码模块化 17.2 过程 17.2.1 调用一个过程 17.2.2 过程的头部 17.2.3 过程体 17.2.4 END标签 17.2.5 RETURN语句 17.3 函数 17.3.1 函数的结构 17.3.2 返回的数据类型 17.3.3 END标签 17.3.4 调用函数 17.3.5 不带参数的函数 17.3.6 函数的头部 17.3.7 函数体 17.3.8 RETURN语句 17.4 参数 17.4.1 定义参数 17.4.2 形参和实参 17.4.3 参数模式 17.4.4 在PL/SQL中明确地把形参和实参关联在一起 17.4.5 NOCOPY参数模式限定符 17.4.6 缺省值 17.5 局部或者嵌套模块 17.5.1 使用局部模块的好处 17.5.2 局部模块的作用范围 17.5.3 用局部模块让我们的代码更整洁 17.6 模块重载 17.6.1 使用重载的好处 17.6.2 重载的限制 17.6.3 关于数字类型的重载 17.7 前置声明 17.8 高级主题 17.8.1 在SQL中调用我们的函数 17.8.2 表函数 17.8.3 确定性函数 17.9 把模块化进行到底 第18章 包 18.1 为什么是包? 18.1.1 演示包的能力 18.1.2 有关包的一些概念 18.1.3 图示私有性 18.2 构建包的规则 18.2.1 包规范 18.2.2 包体 18.2.3 包的初始化 18.3 包成员的调用规则 18.4 使用包数据 18.4.1 在一个Oracle会话内全局可见 18.4.2 全局公有数据 18.4.3 包游标 18.4.4 包的串行化 18.5 何时使用包 18.5.1 封装对数据的访问 18.5.2 避免直接量的硬编码 18.5.3 改善内置特性的可用性 18.5.4 把逻辑上相关的功能组织在一起 18.5.5 缓存静态的会话数据 18.6 包和对象类型 第19章 触发器 19.1 DML触发器 19.1.1 DML触发器的概念 19.1.2 创建DML触发器 19.1.3 DML触发器的例子:不许作弊! 19.1.4 同一类型的多个触发器 19.1.5 何去何从 19.1.6 突变表的错误 19.1.7 复合触发器:聚集一堂 19.2 DDL触发器 19.2.1 创建DDL触发器 19.2.2 可用事件 19.2.3 可用属性 19.2.4 使用事件和属性 19.2.5 删除不可删除的 19.2.6 INSTEAD OF CREATE 触发器 19.3 数据库事件触发器 19.3.1 创建数据库事件触发器 19.3.2 STARTUP触发器 19.3.3 SHUTDOWN触发器 19.3.4 LOGON触发器 19.3.5 LOGOFF触发器 19.3.6 SERVERERROR触发器 19.4 INSTEAD OF触发器 19.4.1 创建INSTEAD OF触发器 19.4.2 INSTEAD OF INSERT触发器 19.4.3 INSTEAD OF UPDATE触发器 19.4.4 INSTEAD OF DELETE触发器 19.4.5 填充表 19.4.6 嵌套表的INSTEAD OF触发器 19.5 AFTER SUSPEND触发器 19.5.1 构建AFTER SUSPEND触发器 19.5.2 看看真实的触发器 19.5.3 ORA_SPACE_ERROR_INFO函数 19.5.4 DBMS_RESUMABLE包 19.5.5 捕获多个时间 19.5.6 该不该处理? 19.6 管理触发器 19.6.1 禁用、启用以及删除触发器 19.6.2 创建一个禁用的触发器 19.6.3 查看触发器 19.6.4 检查触发器的有效性 第20章 管理PL/SQL代码 20.1 管理数据库内的代码 20.1.1 数据字典视图概述 20.1.2 显示存储对象的信息 20.1.3 源代码的显示和搜索 20.1.4 根据程序的大小确定Pinning需求 20.1.5 获得存储代码的属性 20.1.6 通过视图分析和更改触发器状态 20.1.7 分析参数信息 20.1.8 分析标识符的使用(Oracle 数据库11g的PL/Scope) 20.2 依赖关系的管理以及代码的重编译 20.2.1 通过数据字典视图分析依赖关系 20.2.2 细粒度依赖(Oracle数据库11g) 20.2.3 远程依赖 20.2.4 Oracle的远程调用模式的限制 20.2.5 失效的程序单元的重编译 20.3 编译时刻警告 20.3.1 一个入门例子 20.3.2 启用编译时刻警告 20.3.3 一些有用的警告 20.4 PL/SQL程序的测试 20.4.1 典型的、华而不实的测试技术 20.4.2 PL/SQL代码测试的一般建议 20.4.3 PL/SQL的自动测试选项 20.4.4 用utPLSQL测试 20.4.5 用Quest Code Tester for Oracle测试 20.5 跟踪PL/SQL的执行 20.5.1 DBMS_APPLICATION_INFO 20.5.2 Quest Error Manager跟踪 20.5.3 DBMS_TRACE功能 20.6 PL/SQL程序的调试 20.6.1 错误的调试方法 20.6.2 调试技巧和策略 20.7 保护存储过程代码 20.7.1 包装的约束和限制 20.7.2 使用包装功能 20.7.3 通过DBMS_DDL动态包装 20.7.4 包装过的代码的使用指南 20.8 基于版本的重定义(Oracle数据库11g R2版本) 第21章 PL/SQL的性能优化 21.1 辅助优化的工具 21.1.1 内存使用分析 21.1.2 发现PL/SQL代码中的瓶颈所在 21.1.3 计算消耗时间 21.1.4 选择最快的程序 21.1.5 避免无限循环 21.1.6 性能相关警告 21.2 优化过的编译器 21.2.1 优化器的工作原理 21.2.2 循环Fetch操作的运行时优化 21.3 数据缓存技术 21.3.1 基于包的缓存 21.3.2 确定性函数的缓存 21.3.3 函数结果缓存(Oracle数据库11g) 21.3.4 缓存总结 21.4 多行SQL的批处理 21.4.1 通过BULK COLLECT加速查询 21.4.2 通过FORALL加速DML 21.5 利用管道化的表函数提升性能 21.5.1 用基于管道化函数的加载方式替换基于行的插入 21.5.2 用管道函数调优Merge操作 21.5.3 用并行管道函数进行异步的数据卸载 21.5.4 并行管道函数中的分区子句和流子句对性能的影响 21.5.5 管道函数和基于成本的优化器 21.5.6 用管道函数优化复杂的数据加载 21.5.7 管道函数结束语 21.6 专用的优化技术 21.6.1 使用NOCOPY参数模式提示符 21.6.2 使用正确的数据类型 21.7 回顾性能 第22章 I/O操作和PL/SQL 22.1 显示信息 22.1.1 启用DBMS_OUTPUT 22.1.2 向缓存中写入行 22.1.3 从缓存中读取内容 22.2 文件的读写 22.2.1 UTL_FILE_DIR参数 22.2.2 使用Oracle目录 22.2.3 打开文件 22.2.4 文件已经打开了吗? 22.2.5 关闭文件 22.2.6 读取文件 22.2.7 向文件中写 22.2.8 拷贝文件 22.2.9 删除文件 22.2.10 文件改名和文件移动 22.2.11 提取文件属性 22.3 发送邮件 22.3.1 Oracle的前提条件 22.3.2 配置网络安全 22.3.3 发送一个短的(32 767或者更少)的纯文本消息 22.3.4 在邮件地址中加上“友好”的名字 22.3.5 发送任意长度的纯文本消息 22.3.6 发送带有小附件(<32 767)的消息 22.3.7 以附件形式发送一个小文件(<32 767) 22.3.8 任意大小的附件 22.4 使用Web数据(HTTP) 22.4.1 “分片”获得一个Web页面 22.4.2 把页面提取到一个LOB中 22.4.3 使用HTTP的用户名/密码验证 22.4.4 获取一个SSL加密的Web页面(通过HTTPS) 22.4.5 通过GET或者POST给一个Web页面提交数据 22.4.6 禁用Cookies或者Cookies持久化 22.4.7 从FTP服务器获取数据 22.4.8 使用代理服务器 22.5 PL/SQL中可用的其他I/O类型 22.5.1 数据库管道、队列、告警 22.5.2 TCP Socket 22.5.3 Oracle的内置Web服务器 第6部分 高级PL/SQL主题 第23章 应用安全与PL/SQL 23.1 安全概述 23.2 加密 23.2.1 密钥长度 23.2.2 算法 23.2.3 填补和连接 23.2.4 DBMS_CRYPTO包 23.2.5 数据加密 23.2.6 LOB的加密 23.2.7 安全文件 23.2.8 数据解密 23.2.9 生成密钥 23.2.10 密钥管理 23.2.11 加密散列 23.2.12 使用消息验证码 23.2.13 使用透明数据加密(TDE) 23.2.14 透明的表空间加密 23.3 行级安全 23.3.1 为什么要学习RLS 23.3.2 一个简单的RLS示例 23.3.3 使用动态策略 23.3.4 使用列敏感的RLS 23.3.5 RLS调试 23.4 应用程序上下文 23.4.1 使用应用程序上下文 23.4.2 上下文的安全 23.4.3 把上下文用作RLS的谓词条件 23.4.4 识别出非数据库的用户 23.5 细粒度审计 23.5.1 为什么要学习FGA 23.5.2 一个简单的FGA示例 23.5.3 访问多少列 23.5.4 查看审计跟踪信息 23.5.5 使用绑定变量 23.5.6 使用句柄模块 第24章 PL/SQL架构 24.1 DIANA是谁(或者是什么) 24.2 Oracle是如何执行PL/SQL代码的 24.2.1 一个例子 24.2.2 编译器的限制 24.3 PL/SQL的缺省包 24.4 执行权限模型 24.4.1 定义者权限模型 24.4.2 调用者权限模式 24.4.3 组合权限模型 24.5 条件编译 24.5.1 条件编译的例子 24.5.2 查询指令 24.5.3 $IF指令 24.5.4 $ERROR指令 24.5.5 把代码和包常量同步 24.5.6 用查询指令实现程序专有设置 24.5.7 使用预处理后的代码 24.6 PL/SQL和数据库实例内存 24.6.1 PGA、UGA和CGA 24.6.2 游标、内存及其他 24.6.3 减少内存用的技巧 24.6.4 如果内存用光了该怎么办 24.7 原生式编译 24.7.1 什么时候使用解释模式 24.7.2 什么时候使用原生模式 24.7.3 原生编译和数据库版本 24.8 我们需要知道的 第25章 PL/SQL的全球化和本地化 25.1 概述和术语 25.2 Unicode入门 25.2.1 国家字符集的数据类型 25.2.2 字符编码 25.2.3 和全球化支持相关的参数 25.2.4 Unicode 函数 25.3 字符语义 25.4 字符串排序顺序 25.4.1 二进制排序 25.4.2 单语言排序 25.4.3 多语言排序 25.5 多语言信息检索 25.5.1 信息检索和PL/SQL 25.6 日期/时间 25.6.1 时间戳数据类型 25.6.2 日期/时间格式 25.7 货币转换 25.8 PL/SQL的全球化开发工具箱 25.8.1 UTL_I18N工具包 25.8.2 UTL_LMS异常处理包 25.8.3 GDK实现选项 第26章 PL/SQL的面向对象特性 26.1 Oracle对象特性的介绍 26.2 对象类型示例 26.2.1 创建一个基类 26.2.2 创建子类型 26.2.3 方法 26.2.4 在Oracle数据库11g中调用父类的方法 26.2.5 保存、提取、使用持久化对象 26.2.6 演变和创建 26.2.7 回到指针吗? 26.2.8 泛化数据:ANY类型 26.2.9 我也可以自己做 26.2.10 对象的比较 26.3 对象视图 26.3.1 一个示例的关系系统 26.3.2 带有集合属性的对象视图 26.3.3 对象子视图 26.3.4 带有反关系的对象视图 26.3.5 INSTEAD OF触发器 26.3.6 对象视图和对象表的区别 26.4 维护对象类型和对象视图 26.4.1 数据字典 26.4.2 权限 26.5 来自一个关系开发者的总结思考 附录A 正则表达式的元字符和函数参数 A.1 元字符 A.2 函数和参数 A.2.1 正则表达式函数 A.2.2 正则表达式参数 附录B 数字格式模型 附录C 日期格式模型
359KB
Oracle10g_PL_SQL_编程讲义
2011-07-29主要内容:PL/SQL 语言的基本特征、PL/SQL程序的结构、PL/SQL语言的控制结构、游标(cursor)编程、错误处理、存储过程和函数、创建包(Package)、触发器(Trigger)。
53.63MB
精通Oracle PL/SQL--详细书签版
2012-08-21CruiseYoung提供的带有详细书签的电子书籍目录 http://blog.csdn.net/fksec/article/details/7888251 精通Oracle PL/SQL 基本信息 原书名: Mastering Oracle PL/SQL: Practical Solutions 原出版社: Apress 作者: (澳)Connor McDonald (加)Chaim Katz (美)Christopher Beck Joel R. Kallman David C.Knox 译者: 蔡伟毅 丛书名: 图灵程序设计丛书 数据库 出版社:人民邮电出版社 ISBN:9787115208385 上架时间:2009-8-28 出版日期:2009 年9月 开本:16开 页码:439 版次:1-1 所属分类: 计算机 > 数据库 > Oracle 编辑推荐 Amazon五星图书,五位世界级技术专家联袂巨献. 提供大量的实战解决方案.. 教你编写健壮、高效且易于维护的PL/SQL代码... 内容简介 对于oracle技术人员而言,怎么强调掌握pl/sql的重要性都不过分。但是,真正精通pl/sql绝非易事。事实上,在现有的oracle应用程序中充斥着太多质量不佳的pl/sql代码,它们要么没有充分利用oracle特有的功能,要么是在误用或者滥用。这种现象导致了许多对pl/sql本身能力不公正的批评。. 本书由全球oracle技术专家组织oaktable network的多位大师联手编写,是为pl/sql正名的名著。与市面上许多pl/sql图书只是纸上谈兵、局限于语法和功能本身不同,本书从实战出发,讲述如何正确、充分地运用语言特性,除了pl/sql的基本功能之外,也包括数据的高效处理、安全、触发器、高效的调试技术等。作者在讲解每一个特性 时都辅以经过实战检验的示例,更与读者分享了大量多年积累的独家经验。有本书在手,你将学会如何充分发挥pl/sql的巨大潜能,编写出可靠、高效且易于 维护的一流程序。... 作译者 Connor McDonald 世界著名的Oracle技术专家,Oracle认证专家,具有十多年的Oracle系统开发经验,以精深的PL/SQL造诣享誉业界。他的个人网站www.oracledba.co.uk是极具影响的Oracle技术资源。. Chaim Katz Oracle认证专家,擅长数据库管理和PL/SQL开发,为各种Oracle技术期刊写过大量文章。 Christopher Beck Oracle公司资深技术专家,专攻核心数据库技术和Web应用开发。除本书外,他还与Joel R. Kallman和Tom Kyte等人合著了畅销书Beginning Oracle Programming。.. Joel R. Kallman Oracle公司软件开发总监. David C. Knox 世界著名的Oracle安全专家,Oracle公司SolutioncEngineering集团的高级总监.... 目录 封面 -25 扉页 -24 版权 -23 版权声明 -22 致谢 -21 前言 -20 安装 -18 目录 -3 第1章 高效能的PL/SQL 1 1.1 为何使用PL/SQL 1 1.1.1 PL/SQL贴近数据 2 1.1.2 最简单的通常是最好的 2 1.2 什么是高效能的PL/SQL 3 1.2.1 性能 4 1.2.2 影响 4 1.2.3 可论证性 5 1.3 达到高效能 10 1.3.1 绑定变量和解析的代价 10 1.3.2 使用PL/SQL的可用特性 19 1.3.3 不要使用PL/SQL来做SQL的工作 24 1.4 小结 42 第2章 全部打包 43 2.1 包的基本好处 43 2.1.1 包的重载 45 2.1.2 包中的公有变量和私有变量 46 2.1.3 初始化 46 2.1.4 信息隐藏 47 2.2 独立的过程和依赖危机 47 2.3 打破依赖链 55 2.4 使用递归 66 2.5 人们为何避而不用包 68 2.5.1 忽视分离的好处 68 2.5.2 这是个包,不是库 68 2.6 何时不能使用包 71 2.7 发布包 73 2.7.1 路径跟踪编程变得简单 74 2.7.2 其他有用的例程 77 2.7.3 检索DDL 78 2.7
10.78MB
精通Oracle.10g.PLSQL编程
2011-10-21br>精通Oracle 10g PL/SQL编程 <br><br><br>【作 者】王海亮 林立新 于三禄 郑建茹 <br>【丛 书 名】 万水Oracle技术丛书 <br><br>http://images.china-pub.com/ebook20001-25000/21975/shupi.jpg<br><br>PL/SQL是Oracle特有的编程语言,它不仅具有过程编程语言的基本特征(循环、条件分支等),而且还具有对象编程语言的高级特征(重载、继承等)。 本书是专门为Oracle应用开发人员提供的编程指南。通过学习本书,读者不仅可以掌握PL/SQL的基础编程知识(嵌入SQL语句和编写子程序),而且还可以掌握PL/SQL的所有高级开发特征(使用记录类型、集合类型、对象类型和大对象类型)。另外,本书还为应用开发人员提供了大量Oracle9i和Oracle 10g新增加的PL/SQL特征。 本书不仅适合于PL/SQL初学者,而且也适合于有经验的PL/SQL编程人员,本书还可以作为Oracle培训班的教材或者辅助材料。 <br><br><br>前言<br>第1章 PL/SQL综述<br>1.1 SQL简介<br>1.2 PL/SQL简介<br>1.3 Oracle 10g PL/SQL新特征<br>第2章 PL/SQL开发工具<br>2.1 SQL*Plus<br>2.2 PL/SQL Developer<br>2.3 Procedure Builder<br>2.4 习题<br>第3章 PUSQL基础<br>3.1 PL/SQL块简介<br>3.1.1 PL/SQL块结构<br>3.1.2 PL/SQL块分类<br>3.2 定义并使用变量<br>3.2.1 标量变量<br>3.2.2 复合变量<br>3.2.3 参照变量<br>3.2.4 LOB变量<br>3.2.5 非PL/SQL变量<br>3.3 编写PL/SQL代码<br>3.3.1 PL/SQL词汇单元<br>3.3.2 PL/SQL代码编写规则<br>3.4 习题<br>第4章 使用SQL语句<br>4.1 使用基本查询<br>4.1.1 简单查询语句<br>4.1.2 使用WHERE子句<br>4.1.3 使用ORDERBY子句<br>4.2 使用DML语句<br>4.2.1 插入数据<br>4.2.2 更新数据<br>4.2.3 删除数据<br>4.3 使用事务控制语句<br>4.3.1 事务和锁<br>4.3.2 提交事务<br>4.3.3 回退事务<br>4.3.4 只读事务<br>4.3.5 顺序事务<br>4.4 数据分组<br>4.4.1 分组函数<br>4.4.2 GROUPBY和HAVING<br>4.4.3 ROLLUP和CUBE<br>4.4.4 GROUPINGSETS<br>4.5 连接查询<br>4.5.1 相等连接<br>4.5.2 不等连接<br>4.5.3 自连接<br>4.5.4 内连接和外连接<br>4.6 子查询<br>4.6.1 单行子查询<br>4.6.2 多行子查询<br>4.6.3 多列子查询<br>4.6.4 其他子查询<br>4.7 合并查询<br>4.8 其他复杂查询<br>4.9 习题<br>第5章 SQL函数<br>5.1 数字函数<br>5.2 字符函数<br>5.3 日期时间函数<br>5.4 转换函数<br>5.5 集合函数<br>5.6 其他单行函数<br>5.7 分组函数<br>5.8 对象函数<br>5.9 习题第<br>6章 访问Oracle<br>6.1 检索单行数据<br>6.2 操纵数据<br>6.2.1 插入数据<br>6.2.2 更新数据<br>6.2.3 删除数据<br>6.2.4 SQL游标<br>6.3 事务控制语句<br>6.4 习题<br>第7章 编写控制结构<br>7.1 条件分支语句<br>7.2 CASE语句<br>7.3 循环语句<br>7.4 顺序控制语句<br>7.5 习题<br>第8章 使用复合数据类型<br>8.1 PL/SQL记录<br>8.1.1 定义PL/SQL记录<br>8.1.2 使用PL/SQL记录<br>8.2 PL/SQL集合<br>8.2.1 索引表<br>8.2.2 嵌套表<br>8.2.3 变长数组(VARRAY)<br>8.2.4 PL/SQL记录表<br>8.2.5 多级集合<br>8.2.6 集合方法<br>8.2.7 集合赋值<br>8.2.8 比较集合<br>8.3 批量绑定<br>8.3.1 FORALL语句<br>8.3.2 BULKCOLLECT子句<br>8.4 习题<br>第9章 使用游标<br>9.1 显式游标<br>9.2 参数游标<br>9.3 使用游标更新或删除数据<br>9.4 游标FOR循环<br>9.5 使用游标变量<br>9.6 使用CURSOR表达式<br>9.7 习题<br>第10章 处理例外<br>10.1 例外简介<br>10.2 处理预定义例外<br>10.3 处理非预定义例外<br>10.4 处理自定义例外<br>10.5 使用例外函数<br>10.6 PL/SQL编译警告<br>10.7 习题<br>第11章 开发子程序<br>11.1 开发过程<br>11.2 开发函数<br>11.3 管理子程序<br>11.4 习题<br>第12章 开发包<br>12.1 建立包<br>12.2 使用包重载<br>12.3 使用包构造过程<br>12.4 使用纯度级别<br>12.5 习题<br>第13章 开发触发器<br>13.1 触发器简介<br>13.2 建立DML触发器<br>13.2.1 语句触发器<br>13.2.2 行触发器<br>13.2.3 使用DML触发器<br>13.3 建立INSTEADOF触发器<br>13.4 建立系统事件触发器<br>13.5 管理触发器<br>13.6 习题<br>第14章 开发动态SQL<br>14. 1 动态SQL简介<br>14.2 处理非查询语句<br>14.3 处理多行查询语句<br>14.4 在动态SQL中使用BULK子句<br>14.5 习题第15章 使用对象类型<br>15.1 对象类型简介<br>15.2 建立和使用简单对象类型<br>15.3 建立和使用复杂对象类型<br>15.3.1 对象类型嵌套<br>15.3.2 参照对象类型<br>15.3.3 对象类型继承<br>15.4 维护对象类型<br>15.5 习题<br>第16章 使用LOB对象<br>16.1 LOB简介<br>16.2 DBMS LOB包<br>16.3 访问LOB<br>16.3.1 访问CLOB<br>16.3.2 访问BLOB<br>16.3.3 访问BFILE<br>16.4 习题<br>第17章 使用Oracle系统包<br>17.1 DBMS_OUTPUT<br>17.2 DBMS JOB<br>17.3 DBMS PIPE<br>17.4 DBMSAIERT<br>17.5 DBMS TRANSACTION<br>17.6 DBMS SESSION<br>17.7 DBMS ROWID<br>17.8 DBMSRLS<br>17.9 DBMS DDL<br>17.10 DBMS SHARED POOL<br>17.11 DBMSRANDOM<br>17.12 DBMS LOGMNR<br>17.13 DBMS FLASHBACK<br>17.14 DBMS OBFUSCATION TOOLKIT<br>17.15 DBMS SPACE<br>17.16 DBMS SPACE ADMIN<br>17.17 DBMSTTS<br>17.18 DBMSREPAIR<br>17.19 DBMSRESOURCE MANAGER<br>17.20 DBMS STATS<br>17.21 UTL FIIE<br>17.22 UTL INADDR<br>附录A 习题参考答案<br>附录B 使用SQL*Plus <br><br>http://www.china-pub.com/21975
-
下载
汽车ABS控制simulink模型.rar
汽车ABS控制simulink模型.rar
-
下载
智慧特色小镇解决方案.pptx
智慧特色小镇解决方案.pptx
-
下载
referral_customer.psd
referral_customer.psd
-
下载
基于python开发美国外贸数据采集工具v1.4下载
基于python开发美国外贸数据采集工具v1.4下载
-
下载
新型冰箱绝热材料的开发.pdf
新型冰箱绝热材料的开发.pdf
-
下载
NfcDemo.zip
NfcDemo.zip
-
下载
压缩机使用方法.ppt
压缩机使用方法.ppt
-
下载
智慧物业可视化管控平台建设解决方案.pptx
智慧物业可视化管控平台建设解决方案.pptx
-
下载
地铁木乃伊的案件分析案例.docx
地铁木乃伊的案件分析案例.docx
-
下载
智慧河湖可视化管理解决方案.pptx
智慧河湖可视化管理解决方案.pptx
