oracle 儲存過程型別:
1、in:輸入型別,即由應用程式將資料傳入oracle儲存過程中;這種引數在儲存過程中是唯讀引數,在儲存過程中無法對該型別的引數進行修改;
2、out:輸出引數,是在儲存過程中對該值進行賦值,在程式中獲取值。
3、in out:輸入輸出引數,兼具以上兩種特性,但可讀可寫。
驗證輸入引數:
由於預設引數是輸入型別的,在上圖中,對bacount引數賦值,報錯。
解決辦法:
create簡單來說 in 是呼叫儲存過程的時候向儲存過程傳遞的訊息。out是儲存過程向呼叫者傳出的訊息。in out 則是兩者之間相互通訊。orreplace package body bawq_proc_jgzx is
procedure
proc_csjgzx
( pproc
varchar2
, bacount
int :=3)
isi
int :=bacount; --
定義變數,通過變數替代引數
begini:=
bacount;
dbms_output.put_line(i);
delete
csjgzx;
while i>
0loop
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
;
endloop;
endproc_csjgzx;
end bawq_proc_jgzx;
oracle儲存過程 帶引數的儲存過程
帶引數的儲存過程 舉例 為指定的員工漲100元的工資,列印漲前和漲後的工資 如果帶參,需要指定是輸入引數還是輸出引數 create orreplace procedure raisesalary eno in number as 定義乙個變數儲存漲前的薪水,引用emp中sal的型別作為psal的型別...
oracle 儲存過程 沒有引數
create or replace procedure a meas miinsp plan update asvs msg varchar2 4000 log body varchar2 400 log body2 varchar2 400 updatecount number plancodes...
Oracle儲存過程傳遞陣列引數
今天晚上,和同事聊起oracle儲存過程傳遞陣列引數能否使用資料,之後就在自己的電腦上試試,試了試是可以使用。先要定義乙個型別myvarray list 陣列的長度是10,陣列中存放的資料型別是varchar2。sql create or replace type myvarray list as ...