oracle 儲存過程 的建立以及使用
阿新 • • 發佈:2018-12-11
1.概念
儲存過程:
實際上是封裝在伺服器上一段PLSQL程式碼片斷,已經編譯好了的程式碼
客戶端取呼叫儲存過程,執行效率就會非常高效
語法:
create [or replace] procedure 儲存過程的名稱(引數名 in|out|in out 引數型別,引數名 in|out|in out 引數型別)
is | as
--宣告部分
begin
--業務邏輯
end;
in、out、in out 引數使用方法請參考:
2.呼叫方式
方式1
call 儲存過程的名稱 (引數);
方式2 (用的最多的方式)
declare
begin
儲存過程的名稱 (引數);
end;
3.案例 :
使用oracle自帶學習使用者 SCOTT 裡的 EMP 表 進行操作.
要求 : 建立一個儲存過程,給指定的員工漲工資
-- 檢視7788漲工資前的工資
select empno,sal from emp where empno = 7788;
-- 建立儲存過程, 員工編號引數 p_empno,漲薪數 引數 p_sal create or replace procedure pro_updatesal(p_empno number,p_sal number) as -- 宣告變數,用來 儲存當前工資 cu_sal number; begin -- 把當前工資 賦值給變數 select sal into cu_sal from emp where empno = p_empno; -- 更新 update emp set sal = cu_sal+p_sal where empno = p_empno; -- 一般儲存過程最後一句就是 提交 commit; end;
-- 呼叫儲存過程,給 7788號員工 加 100 塊
call pro_updatesal(7788,100);
-- 查詢結果,驗證是否成功
select empno,sal from emp where empno = 7788;