为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水。
--创建一个带参数的存储过程;
--为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水。
/*
调用:
begin
raiseSalary(7839);
raiseSalary(7566);
commit;
end;
*/
CREATE OR REPLACE PROCEDURE raiseSalary(eno IN NUMBER)
AS
--定义变量保存涨前的薪水
psal emp.sal%TYPE;
BEGIN
--得到员工涨前的薪水
SELECT sal INTO psal FROM emp WHERE empno=eno;
--涨100
UPDATE emp SET sal=sal+100 WHERE empno=eno;
--一般不在存储过程或存储函数中,commit或者rollback。
--打印
dbms_output.put_line('涨前: '||psal||' 涨后: '||(psal+100));
END;
begin
raiseSalary(7839);
raiseSalary(7566);
commit;
end;