oracle存储过程和函数的区别

来源:互联网 发布:arm模拟器 windows 编辑:程序博客网 时间:2024/04/30 00:48

区别如下:





案例 :

存储过程 :

create or replace procedure prc_aaa( v_a  number   , v_b out number)isbegin     v_b:=33+v_a;   dbms_output.PUT_LINE(v_b); end prc_aaa;

解析 :

v_b  是返回参数, v_a 是传入参数

获得返回值参数的调用方式 :

DECLAREv_c NUMBER ;BEGINprc_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;  



0 0