Oracle 執行存儲過程五種方法(帶參數& 不帶參數)


1.如果是命令窗口就用exec 存儲過程名:

1

EXEC  procedure--procedure是存儲過程名

 2.如果是  SQL窗口就用 begin  存儲過程名  end; 

1

2

3

begin

  procedure;--procedure是存儲過程名

end;

 3.如果是程序中調用就用 call 存儲過程名 ,舉個栗子:

hibernateDao.excuteSqlUpdate("{Call proc_stuInfo()}");//存儲過程proc_stuInfo

-----------------------------------------------------------------------------------------------------------------------------------

4、帶 in out 類型的參數執行  (oracle 存儲過程 交換兩個變量的值)

        先定義變量賦值后 再調用執行  例如:


declare 
     a  varchar2(20):= '01';
     b  varchar2(20):='02';
   --  a= '01' ;b='02';
begin  
    exchange(a ,b);
--存儲過程定義 
create or replace procedure exchange(a in out varchar2, b in out varchar2) is
   v_b varchar2(30);
   -- a  varchar2(30);
   --b  varchar2(30);
begin
   
   v_b :=a;   
   a := b; 
   b := v_b; 
   dbms_output.put_line('a:'||a||'   b:'||b);
   

end exchange;


--執行
declare 
     a  varchar2(20):= '01';
     b  varchar2(20):='02';
   --  a= '01' ;b='02';
begin  
    exchange(a ,b);
END;

結果:

5.存儲過程中調用存儲過程 

直接寫存儲過程名就行

procedure--procedure是存儲過程名


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM