儲存過程(stored procedure )是一組為了完成特定功能的sql 語句集,經編譯後儲存在資料庫中。
使用者通過指定儲存過程的名字並給出引數(如果該儲存過程帶有引數)來執行它。儲存過程是資料庫中的乙個重要物件,任何乙個設計良好的資料庫應用程式都應該用到儲存過程。儲存過程是由流控制和sql 語句書寫的過程,這個過程經編譯和優化後儲存在資料庫伺服器中,應用程式使用時只要呼叫即可。在oracle 中,若干個有聯絡的過程可以組合在一起構成程式包。
(1)語法結構
create or replace procedure 儲存過程名字
( 引數1 in number,
引數2 in number
) as
變數1 integer :=0;
變數2 date;
begin
end 儲存過程名字
(2)使用舉例
根據學號更新學生學分。
create
orreplace
procedure updatesval(stu_no in number ,stu_val in number)
asoldsval number;
newsval number;
begin
select sval into oldsval from t_student where sno = stu_no;
dbms_output.put_line(『更新前值為:』 || oldsval)
;update t_student set sval = sval + stu_val where sno = stu_no;
commit
;-- 命令提交
select sval into newsval from t_student where sno = stu_no;
dbms_output.put_line(
'更新前值為:'
|| newsval)
;end
;
Oracle資料庫儲存過程
建立語句 create or replace procedure 儲存過程名 儲存過程名定義 包括儲存過程名和引數列表。引數名和引數型別。引數名不能重複,引數傳遞方式 in,out,in out in 表示輸入引數,按值傳遞方式。out 表示輸出引數,可以理解為按引用傳遞方式。可以作為儲存過程的輸出...
匯出oracle資料庫儲存過程
專案結束了,想把自己寫的儲存過程匯出儲存乙份就寫了這麼乙個簡單的指令碼,拿出來給大家共享一下。其實很簡單,主要用到user procedures user source兩個檢視,大家一看就知道了。好像網上搜到的一些都不夠全面,而且零零散散,如果覺得好的話就支援一下吧,usr bin ksh prof...
Oracle資料庫之儲存過程
目錄 程式單元 儲存過程由來 即為程式單元,相當於其他高階程式語言中的函式或者子過程,具體的可以分為儲存過程 函式 包和觸發器4種。很多複雜的sql塊只能使用一次且不會被儲存在資料庫中 使用時,在乙個儲存過程中呼叫另外乙個儲存過程主要是出於 重用的目的。儲存過程 procedure 用於在資料庫種完...