oracle中,一个存储过程怎么调用另一个存储过程?这两个存储过程都带有各自的参数。直接调用似乎不行。
1个回答
展开全部
函数是有返回值的,可以当作数据库的域来操作;而存储过程是没有返回值的,不可以当作域来操作的,随你怎么调用都是可以的;但是有一条规则是要注意的,同时更新锁定同一记录的函数/存储过程是不可以的。
看看我下面几个示例:
直接调用:
BEGIN
P_TJZF(a,b,c);//这是一个存储过程
COMMIT;
END;
--或
select P_TJZF(a,b,c) from dual;--这是函数的执行方法,存储过程也可以这样干,只是没有返回值。
过程调用:
CREATE OR REPLACE procedure P_jgdy is
kk number(3) default 1;
kk2 number(2) default 1;
begin
for kk in 1..2 loop
kk2 := kk2 + 1;
P_TJZF(kk,kk2,1);//这是一个存储过程
end loop;
end P_jgdy;
/
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询