第9章 存储过程、函数、触发器和包.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 存储过程、函数、触发器和包

创建触发器的限制 编写触发器程序时有些限制,希望程序人员注意下面的一些情况   另外,在创建触发器时还要注意下面一些限制: 触发器中不能使用控制语句 COMMIT、ROLLBACK、SVAEPOINT 语句 由触发器所调用的过程或函数也不能使用控制语句; 触发器中不能使用LONG、LONG RAW 类型; 触发器所访问的表受到远表的约束限制,即后面的“变化表”。 一般的触发器的代码大小必须小于32K;如果大于这个限制,可以将其拆成几个部分来写。 提示:虽然触发器的功能很强大,但过多地依靠触发器会使得数据库的维护变得相当复杂和困难,所以在使用触发器时一定要慎重。 程 序 包 为了实现程序模块化,Oracle中可以使用包来提高程序的执行效率。包就是把相关的存储过程、函数、变量、常量和游标等PL/SQL程序组合在一个起并赋予一定的管理功能的程序块。 包中的程序元素也分为公用元素和私有元素两种,这两种元素的区别是他们允许访问的程序范围不同,即他们的作用域不同。公用元素不仅可以被包中的函数、过程调用,也可以被包外的PL/SQL块调用。而私有元素只能被该包内部的函数或过程调用。 创建程序包 一个程序包含两部分组成:包定义和包体。 包定义   包定义使用CREATE PACKAGE语句,其语法结构如下: CREATE [OR REPLACE] PACKAGE package_name {IS | AS} [package_specification;] END [package_name]; 创建包体 包体是独立于包头的另外数据库对象经过Oracle的PL/SQL解释的程序会被分成包的头部、包的体部及存储过程、函数部分。包体的创建语法如下:  CREATE [OR REPLACE] PACKAGE BODY package_name   {IS | AS}   package_body;   END [package_name];    例9-22 创建包t_package,在该包的定义中列出一个存储过程append_proc和一个函数appedn_fun。 --包定义?? SQL CREATE OR REPLACE PACKAGE?t_package?? 2 IS?? 3 ??? ?PROCEDURE?append_proc(t?varchar2,a?out?varchar2);???--定义过程 4 ?? ?PROCEDURE?append_proc(t?number,a?out?varchar2);??--过程的重载?? 5 FUNCTION?append_fun(t?varchar2)?return?varchar2;??--定义函数? 6 END;?? 7 / 程序包已创建。 包的开发与删除 包的开发步骤   与开发存储过程类似,包的开发需要几个步骤: 将每个存储过程调试正确; 用文本编辑软件将各个存储过程和函数集成在一起; 按照包的定义要求将集成的文本的前面加上包头; 按照包的定义要求将集成的文本的前面加上包体; 使用SQLPLUS或开发工具进行调试。 删除程序包   对那些不再需要的包,只要具有DROP ANY PROCEDURE权限,就可删除它们。   还可以 DROP PACKAGE 命令对不需要的包进行删除,语法如下:   DROP PACKAGE package_name; 9.5 实例分析 详见教材 9.5 节 实例分析 本 章 小 结   本章主要介绍了PL/SQL程序块的高级使用; 介绍了触发器的类型、作用以及创建和管理过程; 对程序包的创建和使用也进行了阐述。 Thank you! * * 9 《Oracle数据库应用与实践》 《Oracle数据库应用与实践》 1-* 《Oracle数据库应用与实践》 1-* 第9章 存储过程、函数、触发器和包 复 习 提 问 回顾 上一章介绍了PL/SQL基本程序块的使用,为了提高系统的可重用性和可靠性,Oracle提供了一系列“命名程序块”即存储过程、函数、触发器和程序包等PL/SQL存储程序。 本章介绍 介绍存储过程、函数、触发器和程序包的创建与调用 本 章 要 点: 掌握存储过程的创建 熟练掌握带参数的存储过程的使用 掌握函数的创建与执行 理解触发器的类型与作用 熟练掌握各种类型的触发器创建与使用 了解程序包的创建与使用 存 储 过 程 存储过程是一个命名的程序块。使用它,不

文档评论(0)

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

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

1亿VIP精品文档

相关文档