oracle 批量insert
时间: 2023-11-02 22:49:40 浏览: 96
oracle 批量
3星 · 编辑精心推荐
要进行Oracle批量插入,可以使用以下方法:
1. 使用INSERT ALL语句
INSERT ALL语句允许您一次插入多个行,使用以下语法:
INSERT ALL
INTO table_name (column1, column2, column3) VALUES ('value1', 'value2', 'value3')
INTO table_name (column1, column2, column3) VALUES ('value4', 'value5', 'value6')
INTO table_name (column1, column2, column3) VALUES ('value7', 'value8', 'value9')
SELECT 1 FROM DUAL;
2. 使用INSERT INTO SELECT语句
您可以使用INSERT INTO SELECT语句一次从一个表中选择多个行并将它们插入到另一个表中,使用以下语法:
INSERT INTO table_name (column1, column2, column3)
SELECT column1, column2, column3 FROM source_table
WHERE condition;
3. 使用PL/SQL块
您可以使用PL/SQL块一次插入多个行,使用以下语法:
DECLARE
TYPE typ_mytable IS TABLE OF mytable%ROWTYPE;
var_mytable typ_mytable := typ_mytable();
BEGIN
var_mytable.extend(3);
var_mytable(1).column1 := 'value1';
var_mytable(1).column2 := 'value2';
var_mytable(1).column3 := 'value3';
var_mytable(2).column1 := 'value4';
var_mytable(2).column2 := 'value5';
var_mytable(2).column3 := 'value6';
var_mytable(3).column1 := 'value7';
var_mytable(3).column2 := 'value8';
var_mytable(3).column3 := 'value9';
FORALL i IN var_mytable.first..var_mytable.last
INSERT INTO mytable VALUES var_mytable(i);
END;
这些都是插入多个行的有效方法,您可以根据您的需求选择其中任何一种。
阅读全文