--定义一个包,包里面包含一个存储过程 update_emp,和一个函数sp_fun2
create or replace package sp_package1 is
procedure update_emp(names varchar2,nums number);
function sp_fun2(names varchar2) return number;
end;
--定义包体,用来实现刚刚定义包里面的存储过程和函数
create or replace package body sp_package1 is
procedure update_emp(names varchar2,nums number)
is
begin
update emp set sal=nums where ename=names;
end;
function sp_fun2(names varchar2)
return number is nums number(7,2);
begin
select sal into nums from emp where ename=names;
return nums;
end;
end;
--调用包里面的存储过程
exec sp_package1.update_emp('SCOTT',120);
--调用包里面的函数
var nums number;
call sp_package1.sp_fun2('SCOTT') into:nums;
create or replace package sp_package1 is
procedure update_emp(names varchar2,nums number);
function sp_fun2(names varchar2) return number;
end;
--定义包体,用来实现刚刚定义包里面的存储过程和函数
create or replace package body sp_package1 is
procedure update_emp(names varchar2,nums number)
is
begin
update emp set sal=nums where ename=names;
end;
function sp_fun2(names varchar2)
return number is nums number(7,2);
begin
select sal into nums from emp where ename=names;
return nums;
end;
end;
--调用包里面的存储过程
exec sp_package1.update_emp('SCOTT',120);
--调用包里面的函数
var nums number;
call sp_package1.sp_fun2('SCOTT') into:nums;