创建存储过程DelEmployee,针对scott模式下的emp表,完成给定员工编号empno后(存储过程输入参数),删除该员工信息。注意:(1)当emp表中存在给定编号员工时,删除员工,并在控制台打印输出以下格式:编号为%empno%的员工已被删除;(2)当emp表中不存在该编号员工时,控制台打印输出以下格式:编号为%empno%的员工不存在,请重新输入!
时间: 2024-03-23 17:41:18 浏览: 73
针对scott用户中的emp表完成如下操作:
以下是针对scott模式下的emp表,实现删除指定员工的存储过程DelEmployee的代码:
```sql
CREATE OR REPLACE PROCEDURE DelEmployee (
empno_in IN emp.empno%TYPE
) AS
emp_count NUMBER;
BEGIN
SELECT COUNT(*) INTO emp_count FROM emp WHERE empno = empno_in;
IF emp_count > 0 THEN
DELETE FROM emp WHERE empno = empno_in;
DBMS_OUTPUT.PUT_LINE('编号为' || empno_in || '的员工已被删除');
ELSE
DBMS_OUTPUT.PUT_LINE('编号为' || empno_in || '的员工不存在,请重新输入!');
END IF;
END;
```
该存储过程接收一个输入参数empno_in,表示需要删除的员工编号。首先通过SELECT COUNT(*)语句查询emp表中是否存在该编号的员工,如果存在,则执行DELETE FROM emp语句删除该员工,并在控制台打印输出"编号为%empno%的员工已被删除";如果不存在,则在控制台打印输出"编号为%empno%的员工不存在,请重新输入!"。
阅读全文