首頁 >資料庫 >mysql教程 >為什麼我的 Postgres DELETE 查詢失敗並顯示'列”不存在”?

為什麼我的 Postgres DELETE 查詢失敗並顯示'列”不存在”?

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-10 09:01:42672瀏覽

Why Postgres DELETE Fails: "column "does not exist"

解決PostgreSQL DELETE語句錯誤:「列不存在」

在PostgreSQL資料庫中執行刪除操作時,遇到錯誤訊息「列「不存在」。錯誤語句如下:

<code class="language-sql">delete from "Tasks" where id = "fc1f56b5-ff41-43ed-b27c-39eac9354323";</code>

此語句意圖根據特定「id」值從「Tasks」表中刪除一筆記錄。然而,錯誤表明系統將“fc1f56b5-ff41-43ed-b27c-39eac9354323”解釋為列名而不是標識符。

此問題的原因在於引號使用不一致。在SQL中,雙引號(")表示標識符(例如,表名、列名),而單引號(')包含字元常數。在此語句中,雙引號同時用於定義表名和要比較的「id ”值。

為了解決此問題,請確保字元常數正確地用單引號括起來,而標識符仍然用雙引號括起來。以下更正後的語句應該可以成功執行:

<code class="language-sql">delete from "Tasks" where id = 'fc1f56b5-ff41-43ed-b27c-39eac9354323';</code>

以上是為什麼我的 Postgres DELETE 查詢失敗並顯示'列”不存在”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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