解決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中文網其他相關文章!