要批量添加数据,可以使用Oracle的FORALL语句结合BULK COLLECT功能。以下是一个示例的存储过程,用于批量添加数据:
CREATE OR REPLACE PROCEDURE add_data_bulk ( p_data_list IN SYS.ODCIVARCHAR2LIST ) IS TYPE t_data IS TABLE OF your_table%ROWTYPE; l_data t_data; BEGIN -- 将输入的数据列表转换为表类型 FORALL i IN 1..p_data_list.COUNT INSERT INTO your_table VALUES p_data_list(i); -- 提交事务 COMMIT; -- 可以根据需要进行其他操作 END;
在调用存储过程时,需要将要添加的数据字符串列表传递给存储过程。
例如,如果要添加名为"John"和"Sara"的两个人的数据,可以使用以下代码:
DECLARE l_data_list SYS.ODCIVARCHAR2LIST := SYS.ODCIVARCHAR2LIST('John', 'Sara'); BEGIN add_data_bulk(p_data_list => l_data_list); END;
这样就会将"John"和"Sara"的数据批量添加到表中。你可以根据自己的需求调整存储过程和数据。