区别如下:
案例 :
存储过程 :
create or replace procedure prc_aaa( v_a number , v_b out number)
is
begin
v_b:=33+v_a;
dbms_output.PUT_LINE(v_b);
end prc_aaa;
解析 : v_b 是返回参数, v_a 是传入参数
获得返回值参数的调用方式 :
DECLARE
v_c NUMBER ;
BEGIN
prc_aaa(1 ,v_c);
DBMS_OUTPUT.PUT_LINE(v_c);
END;
这里的v_c 接收存储过程的返回值
函数 :
create or replace function sel_emailinfo(namee email_info.fullname%type )
return varchar2 is
address varchar2(30);
begin
select email_address into address from email_info
where trim(fullname)=trim(namee);
return address;
end ;
//调用函数
select sel_emailinfo('bbb') from dual;