當我看到很多網站,如果我想打一個INSERT ALL
,我必須用一個SELECT (Like SELECT * FROM dual;)
爲什麼我們必須在'INSERT ALL'之後做出SELECT?
爲什麼看完了嗎?
當我看到很多網站,如果我想打一個INSERT ALL
,我必須用一個SELECT (Like SELECT * FROM dual;)
爲什麼我們必須在'INSERT ALL'之後做出SELECT?
爲什麼看完了嗎?
子查詢是每INSERT ALL的語法強制性的(見http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_9014.htm#i2111652)
插入子句爲子查詢(即SELECT語句)返回的每一行執行。 SELECT * FROM dual返回一行,所以insert_clause(s)被執行一次(當你想插入一組硬編碼的值時,這很有用)
由於shown in the documentation,INSERT ALL synthax需要一個子查詢:你可以沒有INSERT ALL [...] VALUES [...]
。
我懷疑來自dual的SELECT是一種在多個表上多行插入一行的方法。
通常你必須完成COMMIT。 不知道爲什麼你有一個選擇。 你引用了哪些網站? – Dann 2010-07-01 09:59:45