给员工涨工资,总裁1000,经理800,其他400
1 --给员工涨工资,总裁1000,经理800,其他400 2 set SERVEROUTPUT ON 3 4 declare 5 --定义光标给哪些员工涨工资 6 --alter table "SCOTT"."EMP" rename column "JOB" to "EMPJOB" 7 cursor cemp is select empno,empjob from emp; 8 pempno emp.empno%type; 9 pjob emp.empjob%type; 10 begin 11 rollback; 12 --打开光标 13 open cemp; 14 15 loop 16 --取出一个员工 17 fetch cemp into pempno,pjob; 18 exit when cemp%notfound; 19 20 --判断员工职位 21 if pjob = 'PRESIDENT' then update emp set sal=sal+1000 where empno=pempno; 22 elsif pjob = 'MANAGER' then update emp set sal=sal+800 where empno=pempno; 23 else update emp set sal=sal+400 where empno=pempno; 24 end if; 25 26 end loop; 27 28 --关闭光标 29 close cemp; 30 31 commit; 32 dbms_output.put_line('涨工资完成'); 33 end; 34 /
涨工资之前:
涨工资之后: