oracle父儲存過程呼叫子儲存過程procedure與輸出引數

wisdomone1發表於2013-03-14

--建立儲存過程
SQL> create or replace procedure proc_inner(v_a int,v_out_a out int)
  2  as
  3  begin
  4  v_out_a:=v_a;
  5  dbms_output.put_line(v_out_a);
  6  end;
  7  /
 
Procedure created

--呼叫
SQL> set serveroutput on
SQL> declare
  2  v_out_a int;
  3  begin
  4  proc_inner(1,v_out_a);
  5  end;
  6  /
 
1
 
PL/SQL procedure successfully completed

--建立一個父儲存過程,呼叫上述的儲存過程
SQL> create or replace procedure proc_outer
  2  as
  3  v_out_a int;
  4  begin
  5  proc_inner(1,v_out_a);
  6  end;
  7  /
 
Procedure created
 
SQL> exec proc_outer;
 
1
 
PL/SQL procedure successfully completed

小結:
     1,父儲存過程要定義子儲存過程的輸出變數
     2,執行父儲存過程不用定義輸出引數,直接執行即可
     3,子儲存過程要定義輸出引數,放在begin end中執行

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-756179/,如需轉載,請註明出處,否則將追究法律責任。

相關文章