日期:2014-05-17  浏览次数:21544 次

如何把多个存储过程放在包里执行
目前有 sp_test1,sp_test2,sp_test3
请教给个实例 
如果可以把以上三个存储过程放到一个包里...

------解决方案--------------------
--先建包头
create or replace package sp_test as
procedure sp_test1(v_str varchar2);
procedure sp_test2;
procedure sp_test3;
end sp_test;

--再建包体
create or replace package body sp_test as
procedure sp_test1(v_str varchar2) is 
begin 
dbms_output.put_lint(v_str);
end;
procedure sp_test2() is 
begin 
null;
end;
.....
end sp_test;
这样就把包建好了啊 然后编译成功后,调用时把包头加上就可以了,如sp_test.sp_test2
------解决方案--------------------
探讨
请教下包体里面的存储过程是已经编译成功的存储过程,
还是要把需要用到得存储过程脚本拿出来 放在里面 (例如 放在 sp_test1 的begin 和 end 里面)

引用:

--先建包头
create or replace package sp_test as
procedure sp_test1(v_str varchar2);
procedure sp_te……

------解决方案--------------------
给个例子参考一下: