【Oracle 存儲過程和存儲函數】 (2) 帶參數的存儲過程

存儲過程:函數

 1 --建立待參數的存儲過程
 2 --給指定的員工漲100元工資,並打印漲前和漲後的薪水
 3 create or replace procedure raisesalary(eno in number) --員工號做爲參數傳遞進來
 4 as
 5 --定義一個變量保存漲以前的薪水
 6 psal emp1.sal%type;  7  
 8 begin
 9     --獲得員工漲前的薪水
10     select sal into psal from emp1 where empno=eno; 11     
12     --給該員工漲100元工資
13     update emp1 set sal=sal+100 where empno=eno; --根據傳遞進來的員工號決定漲那個員工的工資
14     
15     --需不須要commit?
16     --注意:通常不在存儲過程或存儲函數中commit或rollback
17     
18     --打印
19     dbms_output.put_line('漲前:'||psal||' 漲後:'||(psal+100)); 20 
21 end; 22 /

函數調用該存儲過程:spa

1 begin
2     raisesalary(7839); 3     raisesalary(7566); 4     commit; 5 end; 6 /

結果:code

相關文章
相關標籤/搜索