【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 /

函数调用该存储过程:

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

结果:

原文地址:https://www.cnblogs.com/CPU-Easy/p/10906568.html