8.plsql里的包


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


1.我们可以使用create package命令来创建包:
实例:
create package sun_package is
procedure update_sal(name varchar2,newsal number);
function annual_income(name varchar2) return number;
end;

包的规范只包含了过程和函数的说明,但是没有过程和函数的实现代码。包体用于实现包规范中的过程和函数。


2.建立包体可以使用create package body命令

SQL>  create or replace package body sun_package is
  2    procedure update_sal(name varchar2,newsal number)
  3      is
  4      begin
  5        update kkkk set sal=newsal where ename=name;
  6        end;
  7        function annual_income(name varchar2)
  8          return number is
  9          annual_salary number;
 10          begin
 11            select sal*12+nvl(comm,0) into annual_salary from emp where ename=name;
 12            return annual_salary;
 13            end;
 14            end;
 15  /
Package body created


3.如何调用包的过程或是函数
当调用包的过程或是函数时,在过程和函数前需要带有包名,如果要访问其它方案的包,还需要在包名前加方案名。

如:
SQL>call sun_package.update_sal('SCOTT',1200);

猜你喜欢

转载自1124117571.iteye.com/blog/2287182