我所用的語句Insert語句問題
insert into foo select bar from foobar
它工作得很好。
然後,一個陽光明媚的日子,我把它改爲:
insert into foo(bar) select bar from foobar
,現在這是行不通的。
第二個陳述有什麼不對嗎?
我想知道這些事情,所以我可以決定在將來我是否必須小心。
編輯
現在是清楚的。我想知道MSSQL和Oracle的語法是否不同。請幫助
我所用的語句Insert語句問題
insert into foo select bar from foobar
它工作得很好。
然後,一個陽光明媚的日子,我把它改爲:
insert into foo(bar) select bar from foobar
,現在這是行不通的。
第二個陳述有什麼不對嗎?
我想知道這些事情,所以我可以決定在將來我是否必須小心。
編輯
現在是清楚的。我想知道MSSQL和Oracle的語法是否不同。請幫助
你有2種可能的語法選擇:
insert into foo
select bar from foobar
insert into foo (column_name_of_foo)
values (select bar from foobar)
如果您foo的表不HABE酒吧列,那麼你將得到一個錯誤與你的第二個語法,因爲你是在你命名列想插入一些東西。
使用第一種語法,您並未命名要插入的列。
好吧,我認爲它確實有效。非常感謝! – MozenRath 2012-02-14 10:23:31
當使用您的第二個語句(insert into table (column)
)語法,你需要添加values
關鍵字和值本身必須用括號包圍:
insert into foo (bar[, bar2]) values (select bar[, bar2] from foobar)
@juergend並請更新的問題 – MozenRath 2012-02-14 10:35:13
@DennisTraub PLZ檢查更新後的問題 – MozenRath 2012-02-14 10:35:31
http://docs.oracle.com/cd/E11882_01/server.112/e17118/toc.htm – tbone 2012-02-14 11:40:27