函数是有返回值的,可以当作数据库的域来操作;而存储过程是没有返回值的,不可以当作域来操作的,随你怎么调用都是可以的;但是有一条规则是要注意的,同时更新锁行如定同一记录的函数/存储过程是不可以的。
看看我下面几个示例:
直接调用:
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;