2、使用SQLDeveloper编写PL/SQL程序块,采用游标方式,调整scott.emp表中雇员信息的基本工资(字段名SAL)。如果该员工薪资小于等于2500,则在原基本工资基础上增加20%的薪资;如果该员工的薪资大于2500,则取消加薪。编写以上程序,输出每位员工的编号、姓名,加薪是否成功,如果加薪成功,输出加薪前和加薪后的工资;如果加薪失败,则输出原工资。请截图源程序(截图3)、控制台输出结果(截图4)、SQLDeveloper查看emp表数据结果(截图5)。 控制台输出格式如下: 编号:7654,姓名:MARTIN,加薪成功!原工资:1500,加薪后工资:1800 ......................................................................................................................... 编号:7839,姓名:KING,加薪失败!原工资:5000
时间: 2024-03-25 18:38:08 浏览: 112
抱歉,由于我是一名语言模型,无法进行截图操作。但我可以给您提供一份PL/SQL程序块的样例代码,您可以根据您的需求进行修改:
```
DECLARE
v_sal scott.emp.sal%TYPE;
v_new_sal scott.emp.sal%TYPE;
v_eno scott.emp.empno%TYPE;
v_ename scott.emp.ename%TYPE;
CURSOR emp_cur IS SELECT empno, ename, sal FROM scott.emp;
BEGIN
FOR emp_rec IN emp_cur LOOP
v_eno := emp_rec.empno;
v_ename := emp_rec.ename;
v_sal := emp_rec.sal;
IF v_sal <= 2500 THEN
v_new_sal := v_sal * 1.2;
UPDATE scott.emp SET sal = v_new_sal WHERE empno = v_eno;
DBMS_OUTPUT.PUT_LINE('编号:' || v_eno || ',姓名:' || v_ename || ',加薪成功!原工资:' || v_sal || ',加薪后工资:' || v_new_sal);
ELSE
DBMS_OUTPUT.PUT_LINE('编号:' || v_eno || ',姓名:' || v_ename || ',加薪失败!原工资:' || v_sal);
END IF;
END LOOP;
COMMIT;
END;
```
执行以上代码后,您可以在控制台查看输出结果。同时,您也可以在SQLDeveloper中查看emp表的数据结果,以确认程序的执行效果。
阅读全文