簡體   English   中英

Oracle SQL中的多行插入

[英]multiple row insert in Oracle SQL

我在Oracle SQL中使用多行插入語法,如下所示:

INSERT ALL
  INTO student(ID, FIRST_NAME, LAST_NAME, AGE)  VALUES(4,'test_name','test_lname',17)
  INTO student(ID, FIRST_NAME, LAST_NAME, AGE)  VALUES(5,'test_name2','test_lname2',20)
  INTO student(ID, FIRST_NAME, LAST_NAME, AGE)  VALUES(6,'test_name3','test_lname3',21)
  select * from dual;

誰能解釋給我用什么意思

從雙選*

在和的聲明中?

它是INSERT ALL的語法

INSERT ALL
INTO <table_name> VALUES <column_name_list)
INTO <table_name> VALUES <column_name_list)
...
<SELECT Statement>;

如果插入后您沒有想要選擇的內容,請select * from dual

否則,您通常會選擇要確認插入成功的選擇

參考

DUAL表是一種特殊的單行表,默認情況下在所有Oracle數據庫安裝中都存在。 它適用於選擇偽列,例如SYSDATE或USER。 該表具有一個名為DUMMY的VARCHAR2(1)列,其值為'X'。

在這里這里了解更多。

全部插入可用於將數據從select語句插入到另一個表中。在您的示例中,您已經提供了要插入的值,這就是為什么您需要執行select * from dual來觸發插入的原因。

http://jzab.blogspot.com/2013/05/oracle-insert-multiple-rows-with-single.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM