在PL/SQL中向表中批量添加数据,可以使用INSERT INTO语句配合FORALL语句来实现。以下是一个示例:
DECLARE TYPE emp_type IS TABLE OF employees%ROWTYPE; -- 定义一个记录类型 emp_data emp_type; -- 声明一个记录变量 BEGIN -- 初始化记录变量 emp_data := emp_type(); -- 填充记录变量 emp_data.extend(3); -- 扩展记录变量以容纳3行数据 emp_data(1).employee_id := 101; emp_data(1).first_name := 'John'; emp_data(1).last_name := 'Doe'; emp_data(2).employee_id := 102; emp_data(2).first_name := 'Jane'; emp_data(2).last_name := 'Smith'; emp_data(3).employee_id := 103; emp_data(3).first_name := 'Mike'; emp_data(3).last_name := 'Johnson'; -- 批量插入数据 FORALL i IN 1..emp_data.count INSERT INTO employees VALUES emp_data(i); COMMIT; -- 提交事务 END; /
在上面的示例中,首先定义了一个记录类型emp_type,然后声明了一个记录变量emp_data。接着使用extend方法扩展了记录变量以容纳3行数据,并填充了这些数据。最后使用FORALL语句批量插入数据到employees表中,并通过COMMIT语句提交事务。