首页 > 数据库技术 > 详细

Oracle——包

时间:2014-04-29 16:53:21      阅读:583      评论:0      收藏:0      [点我收藏+]

包用于在逻辑上组合过程和函数,它由包规范和包体两个部分组成。
(1)首先用CREATE PACKAGE创建包规范,只包含过程和函数的说明,但没有过程和函数的实现代码

--创建一个包名称为sp_package
--声明该包含有一个过程update_sal
--声明该包含有一个函数annual_income
CREATE OR REPLACE PACKAGE sp_package IS
PROCEDURE update_sal(spname VARCHAR2, sal NUMBER);
FUNCTION  annual_income(spNAme VARCHAR2) RETURN NUMBER;
END;

(2)用CREATE PACKAGE BODY命令创建包体,即实现函数和过程的代码
CREATE OR REPLACE PACKAGE BODY sp_package IS
  PROCEDURE update_sal(spname VARCHAR2, newsal NUMBER) IS
    BEGIN
      UPDATE emp SET sal = newsal WHERE ename=spname;
    END;
    
  FUNCTION annual_income(spName VARCHAR2)
  RETURN NUMBER IS
  yearSal number(7,2);
  BEGIN
    SELECT (sal+NVL(comm,0))*12 INTO yearSal FROM emp WHERE ename=spNAme;
    RETURN yearSal;
  END;
END;
(3)调用包中的过程和函数
CALL sp_package.annual_income(‘SMITH‘);

CALL sp_package.annual_income(‘SMITH‘) into:income;

Oracle——包,布布扣,bubuko.com

Oracle——包

原文:http://www.cnblogs.com/nuaa/p/3698094.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!