码迷,mamicode.com
首页 > 数据库 > 详细

Oracle——包

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

标签:com   style   color   int   set   cti   rgb   c   har   new   sp   

包用于在逻辑上组合过程和函数,它由包规范和包体两个部分组成。
(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——包

标签:com   style   color   int   set   cti   rgb   c   har   new   sp   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!