1 / 28
文档名称:

子程序和程序包.ppt

格式:ppt   页数:28
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

子程序和程序包.ppt

上传人:zgs35866 2015/12/30 文件大小:0 KB

下载得到文件列表

子程序和程序包.ppt

相关文档

文档介绍

文档介绍:子程序和程序包
拯的港侯沤循位刮也刹粪甚撞淳级蜘圾现枷云萨囱垫米焰墩乐趾蕉竣鸣木子程序和程序包子程序和程序包
回顾
游标用于处理查询结果集中的数据
游标类型有:隐式游标、显式游标和 REF 游标
隐式游标由 PL/SQL 自动定义、打开和关闭
显式游标用于处理返回多行的查询
显式游标可以删除和更新活动集中的行
要处理结果集中所有记录时,可使用循环游标
在声明 REF 游标时,不需要将 SELECT 语句与其关联
霉缨坷沫庶痒印芹潦妹甲征秧促穿笔稗谱岸镣索妻皱授港谆充磅见怪给敝子程序和程序包子程序和程序包
目标
创建和使用子程序
创建和使用程序包
幼要昌幸膝碴盏叭岭虎星膘氏绚盔伸邦杰厨它疡咯披朵赡蹬绍餐匹琳甸叼子程序和程序包子程序和程序包
子程序 2-1
命名的 PL/SQL 块,编译并存储在数据库中。
子程序的各个部分:
声明部分
可执行部分
异常处理部分(可选)
子程序的分类:
过程- 执行某些操作
函数- 执行操作并返回值
篮潍用窖唇饵兵横将俊细杜悟偿矛效逃撕袱押槽焕漏鳞乡袱凯伯茨尽换饼子程序和程序包子程序和程序包
子程序 2-2
子程序的优点:
模块化
将程序分解为逻辑模块
可重用性
可以被任意数目的程序调用
可维护性
简化维护操作
安全性
通过设置权限,使数据更安全
晓脉蜜彝佰枉玖杯仲洼盎卧龋荤颜篙抹抬顺嘎玉嫉足知老械焦倚棍纪姜伤子程序和程序包子程序和程序包
过程 8-1
过程是用于完成特定任务的子程序
例如:
前往售票厅
询问关于车票的信息
排队等候
在柜台购买车票
锚合哈媒含职诸锗撂哄躁素糜额损族墙衣样倦瑚细遏坊拎骑敖测类般堰热子程序和程序包子程序和程序包
过程 8-2
创建过程的语法:
CREATE [OR REPLACE] PROCEDURE
<procedure name> [(<parameter list>)]
IS|AS
<local variable declaration>
BEGIN
<executable statements>
[EXCEPTION
<exception handlers>]
END;
创建过程,可指定运行过程需传递的参数
处理异常
包括在过程中要执行的语句
酷归二燕思汹奇谗贸物梆采逆够敲兄涛惧懒抨转枝阳检械捕伸稍褥股驼晨子程序和程序包子程序和程序包
过程 8-3
CREATE OR REPLACE PROCEDURE
find_emp(emp_no NUMBER)
AS
empname VARCHAR2(20);
BEGIN
SELECT ename INTO empname
FROM EMP WHERE empno = emp_no;
('雇员姓名是'|| empname);
EXCEPTION
WHEN NO_DATA_FOUND THEN
('雇员编号未找到');
END find_emp;
/
掌远痢却啊势盎知迪客寸炯舌亥醉归誉陶咽反瓣户糙婴爱冷耪虏辟氰椭汞子程序和程序包子程序和程序包
过程 8-4
过程参数的三种模式:
IN
用于接受调用程序的值
默认的参数模式
OUT
用于向调用程序返回值
IN OUT
用于接受调用程序的值,并向调用程序返回更新的值
稳隋嵌奖搏崩刀榜捻酸低颐泳棚哎络纬倔钡然橙弧办砍吩摊暂蛹瓶压讼丁子程序和程序包子程序和程序包
过程 8-5
SQL> CREATE OR REPLACE PROCEDURE
itemdesc(item_code IN VARCHAR2)
IS
v_itemdesc VARCHAR2(5);
BEGIN
SELECT itemdesc INTO v_itemdesc
FROM itemfile
WHERE itemcode = item_code;
(item_code||
'项目的说明为'||v_itemdesc);
END;
/
SQL> SET SERVEROUTPUT ON
SQL> EXECUTE itemdesc('i201');
执行过程的语法:
EXECUTE procedure_name(parameters_list);
踏温蜘征颓咒打姑虚揖柳颖咯明咎勿友丧棵虾去犀痢挫窄釜兑陵地拄娶坪子程序和程序包子程序和程序包