数据库触发器和内置程序包课件.ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库触发器和内置程序包 第九章 回顾 在上一章中,我们讨论了: 子程序 程序包 目标 本章将讨论: 数据库触发器 内置程序包 数据库触发器10-1 数据库触发器 是 PL/SQL 块或存储过程 是在对关联表执行 DML 操作时触发的 是隐式执行的 还可能具有声明部分和异常处理部分 数据库触发器10-2 触发器的组成部分 触发器语句 触发器主体 触发器限制 数据库触发器10-3 触发器语句 指定触发器定时、事件、表名及类型 触发器主体 是 PL/SQL 块或对过程的调用 触发器限制 可以通过 WHEN 子句实现 数据库触发器10-4 触发器的类型 应用程序触发器 数据库触发器 数据库触发器10-5 应用程序触发器 在应用程序内发生特定 DML 事件时,将隐式 触发它 数据库触发器 在表、视图或数据库上发生特定 DML 事件时,将隐式触发它 在表和视图上定义 在数据库或方案上,它也可以充当系统 触发器 数据库触发器10-6 DML 触发器组件 触发器定时 触发器事件 表名 触发器类型 WHEN 子句 触发器主体 数据库触发器10-7 变异表 当前正由 DML 语句修改 声明删除级联(引用完整性约束条件)的影响 约束表 对于 SQL 语句,触发语句直接读取 对于声明的引用完整性约束条件,间接读取 表的变异或约束只是对会话而言的 数据库触发器10-8 INSTEAD OF 触发器 是在视图上而不是在表上定义的 提供修改视图的透明方法 可以针对视图编写 INSERT、UPDATE 及 DELETE 语句 它以不可见方式在后台运行 执行在触发器主体中编写的操作 数据库触发器10-9 嵌套表上的 INSTEAD OF 触发器 不能使用 TABLE 子句直接修改视图中的嵌套列 通过 INSTEAD OF 触发器进行修改 嵌套表上的触发器因 DML 操作而触发 启用和禁用触发器 语法如下: alter trigger Trigger_name enable; alter trigger Trigger_name disable; 其中,Trigger_name 是触发器名称。 数据库触发器10-10 删除触发器 使用以下语法: drop trigger trigger_name; 其中,trigger_name 是触发器名称。 查看有关触发器的信息 使用下列数据字典视图: USER_TRIGGERS ALL_TRIGGERS DBA_TRIGGERS 内置程序包6-1 扩展数据库的功能 为 PL/SQL 提供对 SQL 功能的访问 用户 SYS 拥有所有程序包 是公共同义词 可以由任何用户访问 用户必须具有 EXECUTE 权限,才能访问过程和函数 内置程序包6-2 其中的一些内置程序包如下: 内置程序包6-3 DBMS_STANDARD 提供语言工具 DBMS_ALERT 支持数据库事件的异步通知 DBMS_OUTPUT 允许显示输出结果 如果禁用它,则忽略对此程序包的调用 DBMS_LOB 添加用于处理大型对象的实用过程和函数 内置程序包6-4 DBMS_OUTPUT 中的一些过程 Enable Disable Put Put_line New_line Get_line Get_lines 内置程序包6-5 DBMS_LOB append compare copy erase fileclose fileexists filegetname getlength 内置程序包6-6 Oracle9i 中新增程序包的部分列表 总结3-1 数据库触发器是 PL/SQL 块或存储过程 是在对关联表执行 DML 操作时触发的 数据库触发器的三个组成部分是: 触发器语句 触发器主体 触发器限制 总结3-2 触发器的类型有:应用程序触发器和数据库触发器 变异表是当前正由 DML 语句修改的表 约束表是触发语句为 SQL 语句直接读取的表 触发 INSTEAD OF 触发器,而不是 update、insert 或 delete 语句 可以启用、禁用或删除触发器 总结3-3 Oracle 提供了许多内置程序包,它们用于 扩展数据库的功能 允许访问 SQL 功能,这些功能在 PL/SQL 中通常是受到限制的 用户必须具有程序包的 EXECUTE 权限,才能调用过程和函数 Version 3.0 程序包名称 描述 DBMS_AQELM 提供过程管理 Advanced Queuing 异步通知的配置(通过电子邮件和 HTTP ) 。 DBMS_FGA 提供细粒度安全函数。 DBMS_FLASHBACK 可以闪回到指定时间的数据库版本。 DBMS_LDAP 提供从 LDAP 服务器访问数据的函数和过程。 DBMS_LibCac

文档评论(0)

love1987421 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档