oracle中包的创建和调用

来源:互联网 发布:cpa软件联盟 编辑:程序博客网 时间:2024/06/07 11:21

包用于在逻辑上的组合过程和函数,它由包规范和包体两部分组成。

1.创建包规范

create package sp_package is

 procedure update_sal(name varchar2,newsal number);
 function annual_income(name varchar2) return number;

 end;

2.创建包体

 create or replace package body sp_package is
 procedure update_sal(name varchar2,newsal number)
 is
 begin
 update emp set sal=newsal where ename=name;
 end;
 function annual_income(name varchar2)
 return number is
 annual_salary number;
 begin
 select sal*12+nvl(comm,0)*12 into  annual_salary from emp where ename=name;
 return annual_salary;
 end;
 end;


调用

exec sp_package.update_sal('SCOTT',2600);