编写一个PL/SQL程序块以向emp表添加10个新雇员编号( 7911-7920 ),在scott用户下完成
时间: 2024-11-15 14:28:19 浏览: 20
在Oracle PL/SQL中,你可以创建一个存储过程来插入新员工记录到`emp`表。假设`emp`表有`emp_id`、`first_name`、`last_name`等字段,以下是编写一个存储过程的基本步骤:
```sql
CREATE OR REPLACE PROCEDURE add_new_employees (
p_start_id IN NUMBER,
p_num_of_employees IN NUMBER)
AS
BEGIN
FOR i IN 1..p_num_of_employees LOOP
INSERT INTO emp (emp_id, first_name, last_name) VALUES (p_start_id + i, 'Employee' || i, 'New');
END LOOP;
END add_new_employees;
-- 执行存储过程,传入起始编号和要添加的员工数
DECLARE
num_to_add INT := 10; -- 要添加10名员工
BEGIN
EXEC add_new_employees(7911, num_to_add);
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('An error occurred: ' || SQLERRM);
END;
/
```
在这个例子中,我们首先定义了一个名为`add_new_employees`的存储过程,它接受两个参数:开始编号(`p_start_id`)和要添加的员工数量(`p_num_of_employees`)。然后,通过循环插入指定数量的员工记录,将起始编号加一作为每个员工的`emp_id`。
最后部分展示了如何调用这个存储过程,并处理可能出现的异常。
阅读全文