首頁  >  文章  >  資料庫  >  oracle預存程​​序的參數類型有哪些

oracle預存程​​序的參數類型有哪些

青灯夜游
青灯夜游原創
2022-01-25 15:03:036138瀏覽

oracle預存程​​序的參數類型有:1、輸入類型,表示呼叫者向過程傳入值;2、輸出類型,表示過程向呼叫者傳出值(可以傳回多個值);3 、輸入輸出類型,既表示呼叫者向過程傳入值,也表示過程向呼叫者傳出值。

oracle預存程​​序的參數類型有哪些

本教學操作環境:Windows7系統、Oracle 11g版、Dell G3電腦。

oracle 預存程序的參數類型

#1、in:輸入類型,也就是由應用程式將資料傳入oracle預存程​​序中,表示呼叫者向過程傳入值;此參數在預存程序中是只讀參數,在預存程序中無法對本類型的參數進行修改;

2、out:輸出類型,表示過程向呼叫者傳出值。

3、in out:輸入輸出類型,兼具以上兩種特性,但可讀可寫;既表示呼叫者向過程傳入值,也表示過程向呼叫者傳出值。

驗證輸入參數:

由於預設參數是輸入類型的,在上圖中,對BAcount參數賦值,報錯。

解決方法:

CREATE OR REPLACE PACKAGE body BAWQ_PROC_JGZX IS
PROCEDURE PROC_CSJGZX
(
    pproc VARCHAR2,
    BAcount int :=3
)
IS
 i int :=BAcount;  --定义变量,通过变量替代参数
BEGIN
     i:=BAcount;
dbms_output.put_line(i);
  delete CSJGZX;
  while i>0 LOOP
       i := i-1 ;  
           insert into CSJGZX (CSJGZX_PROC,id,bh,mc,data) values(pproc,SYS_GUID(),SYS_GUID(),'济南',cast(DBMS_RANDOM.VALUE(1,200) as int));
       commit;
   end loop;

END PROC_CSJGZX;
END BAWQ_PROC_JGZX;

簡單來說 in 是呼叫預存程序的時候傳遞給預存程序的訊息。 out是預存程序向呼叫者傳出的訊息。 in out 則是兩者之間相互通訊。

推薦教學:《Oracle教學

以上是oracle預存程​​序的參數類型有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn