个性化阅读
专注于IT技术分析

Oracle INSERT ALL语句

本文概述

Oracle INSERT ALL语句用于通过单个INSERT语句插入多行。你可以仅使用一个SQL命令将行插入到一个表或多个表中。

句法

INSERT ALL
  INTO table_name (column1, column2, column_n) VALUES (expr1, expr2, expr_n)
  INTO table_name(column1, column2, column_n) VALUES (expr1, expr2, expr_n)
  INTO table_name (column1, column2, column_n) VALUES (expr1, expr2, expr_n)
SELECT * FROM dual;

参数

1)table_name:它指定要在其中插入记录的表。

2)column1, column2, column_n:这指定表中要插入值的列。

3)expr1, expr2, expr_n:这指定要分配给表中列的值。

Oracle INSERT ALL示例

本示例指定如何在一个表中插入多个记录。在这里, 我们在”供应商”表中插入三行。

INSERT ALL
  INTO suppliers (supplier_id, supplier_name) VALUES (20, 'Google')
  INTO suppliers (supplier_id, supplier_name) VALUES (21, 'Microsoft')
  INTO suppliers (supplier_id, supplier_name) VALUES (22, 'Apple')
SELECT * FROM dual;

输出

3 row(s) inserted.
0.02 seconds

这完全等效于以下三个INSERT语句。

INSERT INTO suppliers (supplier_id, supplier_name) VALUES (1000, 'Google');
INSERT INTO suppliers (supplier_id, supplier_name) VALUES (2000, 'Microsoft');
INSERT INTO suppliers (supplier_id, supplier_name) VALUES (3000, 'Apple');

Oracle INSERT ALL示例:(插入多个表)

INSERT ALL语句还可用于仅通过一个命令将多行插入到一个以上的表中。

在下面的示例中, 我们将在” suppliers”和” customers”表中插入记录。

INSERT ALL
  INTO suppliers (supplier_id, supplier_name) VALUES (30, 'Google')
  INTO suppliers (supplier_id, supplier_name) VALUES (31, 'Microsoft')
  INTO customers (age, name, address) VALUES (29, 'Luca Warsi', 'New York')
SELECT * FROM dual;

输出

3 row(s) inserted.
0.03 seconds

在这里, 总共插入了3行, 将2行插入了Suppliers表, 将1行插入了customer表。

赞(0)
未经允许不得转载:srcmini » Oracle INSERT ALL语句

评论 抢沙发

评论前必须登录!