您现在的位置: 首页  > Oracle > 基础知识
通行证登录
 

oracle存储过程的源代码

作者:[网上资料 ]
存储过程 包含三部分: 声明,执行部分,异常。 可以有无参数程序和带参数存储过程。 无参程序语法 1 create or replace procedure NoParPro2 as   ;3 begin4  ;5 exception6      ;7 end;8存储过程 包含三部分: 声明,执行部分,异常。 可以有无参数程序和带参数存储过程。 无参程序语法 1 create or replace procedure NoParPro2 as   ;3 begin4  ;5 exception6      ;7 end;8
   带参存储过程实例  1 create or replace procedure queryempname(sfindno emp.empno%type) as 2        sName emp.ename%type; 3        sjob emp.job%type; 4 begin 5        .... 7 exception          ....14 end;15
   带参数存储过程含赋值方式  1 create or replace procedure runbyparmeters  (isal in emp.sal%type,                             sname out varchar,sjob in out varchar) 2  as icount number; 3  begin 4       select count(*) into icount from emp where sal>isal and job=sjob; 5       if icount=1 then 6         .... 9       else10         ....12       end if;13  exception14       when too_many_rows then15       DBMS_OUTPUT.PUT_LINE('返回值多于1行');16       when others then17       DBMS_OUTPUT.PUT_LINE('在RUNBYPARMETERS过程中出错!');18  end;19
  过程调用  方式一 1 declare 2        realsal emp.sal%type; 3        realname varchar(40); 4        realjob varchar(40); 5  begin 6        realsal:=1100; 7        realname:=''; 8        realjob:='CLERK'; 9        runbyparmeters(realsal,realname,realjob);     --必须按顺序10        DBMS_OUTPUT.PUT_LINE(REALNAME||'   '||REALJOB);11  END;12
  方式二 1 declare 2       realsal emp.sal%type; 3       realname varchar(40); 4       realjob varchar(40); 5 begin 6       realsal:=1100; 7       realname:=''; 8       realjob:='CLERK'; 9       runbyparmeters(sname=>realname,isal=>realsal,sjob=>realjob);  --指定值对应变量顺序可变10       DBMS_OUTPUT.PUT_LINE(REALNAME||'   '||REALJOB);11 END;12
|