创建存储过程DelEmployee,针对scott模式下的emp表,完成给定员工编号empno后(存储过程输入参数),删除该员工信息。注意:(1)当emp表中存在给定编号员工时,删除员工,并在控制台打印输出以下格式:编号为%empno%的员工已被删除;(2)当emp表中不存在该编号员工时,控制台打印输出以下格式:编号为%empno%的员工不存在,请重新输入! 在SQLDeveloper中编写以上功能
时间: 2024-03-24 11:35:57 浏览: 35
oracle 存储过程详细介绍(创建,删除存储过程,参数传递等)
您好,以下是DelEmployee存储过程的SQL代码实现:
```sql
CREATE OR REPLACE PROCEDURE DelEmployee (empno IN emp.empno%TYPE) IS
emp_count NUMBER;
BEGIN
SELECT COUNT(*) INTO emp_count FROM emp WHERE empno = DelEmployee.empno;
IF emp_count > 0 THEN
DELETE FROM emp WHERE empno = DelEmployee.empno;
DBMS_OUTPUT.PUT_LINE('编号为'||empno||'的员工已被删除');
ELSE
DBMS_OUTPUT.PUT_LINE('编号为'||empno||'的员工不存在,请重新输入!');
END IF;
END;
```
在SQLDeveloper中执行以上代码,即可创建DelEmployee存储过程。在调用存储过程时,传入要删除的员工编号empno即可。例如:
```sql
BEGIN
DelEmployee(7369);
END;
```
这将删除emp表中员工编号为7369的员工信息,并在控制台输出“编号为7369的员工已被删除”。如果要删除的员工不存在,则输出“编号为xxx的员工不存在,请重新输入!”(xxx为传入的empno)。
阅读全文