首页 > 代码库 > Oracle中包的创建

Oracle中包的创建

包是过程和函数的集合体,包包括创建包和创建包体,创建包的时候在可以定义过程和函数,包体中则具体实现过程和函数。

eg:

--创建包

create  or replace package mypac1 is

procedure mypro1(p_ename varchar2,p_sal number);

function myfun1(f_ename varxhar2) return number;

end;

--创建包体

create package body mypac1 is

procedure mypro1(p_ename varchar2,p_sal number) is--创建过程

begin

update sal set sal=p_sal where ename=p_ename;

end;

function myfun1(f_ename varchar2) return number is yearsal number;--创建函数

begin

select sal*12+nvl(comm,0)  into yearsal from emp where ename=f_ename;

return yearsal;

end;

end;

包中过程和函数的调用:在过程和函数之前需要加上包名

call mypac1.myro1(‘SCOTT‘,10000);

call mypac1.myFUN1(‘SCOTT‘,10000);

Oracle中包的创建