首頁 >資料庫 >mysql教程 >為什麼我的 Oracle 11g INSERT SELECT 語句出現 ORA-00936 錯誤?

為什麼我的 Oracle 11g INSERT SELECT 語句出現 ORA-00936 錯誤?

Susan Sarandon
Susan Sarandon原創
2024-12-29 17:50:11637瀏覽

Why Am I Getting an ORA-00936 Error with My Oracle 11g INSERT SELECT Statement?

Oracle 11G 中的INSERT SELECT 語句故障排除

嘗試在Oracle 11G 中執行INSERT SELECT 陳述式ORA- 00936:缺少表達式」錯誤。此錯誤通常表示語句語法有問題。

要解決此問題,請仔細檢查語句。一個常見錯誤是在 INSERT SELECT 語句中包含 VALUES 關鍵字。在 Oracle 中,VALUES 關鍵字僅在將明確值插入表中時使用,而不是從另一個表中選擇值時使用。

INSERT SELECT 語句的正確語法是:

INSERT INTO table_name (column_list)
SELECT column_list
FROM source_table;

因此,該語句應修改如下:

INSERT INTO table1 (col1, col2)
SELECT t1.col1, t2.col2
FROM oldtable1 t1, oldtable2 t2;

此更正後的語法應該成功執行oldtable1 之間的笛卡兒連接和oldtable2 並將結果行插入table1 中。

以上是為什麼我的 Oracle 11g INSERT SELECT 語句出現 ORA-00936 錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn