PostgreSQL DELETE 查詢中「列不存在」錯誤的解決方法
在PostgreSQL中執行DELETE查詢時,可能會遇到「列不存在」的錯誤。這種錯誤通常是由查詢中雙引號和單引號的使用引起的。
DELETE查詢的語法包括指定表名,然後是WHERE子句,用於根據條件過濾記錄。您提供的查詢:
<code class="language-sql">delete from "Tasks" where id = "fc1f56b5-ff41-43ed-b27c-39eac9354323";</code>
錯誤是因為PostgreSQL將引號內的值解釋為識別碼(例如,表名、列名),而不是字串值。這是因為表名"Tasks"和id值"fc1f56b5-ff41-43ed-b27c-39eac9354323"都用雙引號(")括起來了。
要解決此問題,應將id值用單引號(')括起來,這表示字元常數。這告訴PostgreSQL該值應按字面意思理解。
更正後的查詢:
<code class="language-sql">delete from "Tasks" where id = 'fc1f56b5-ff41-43ed-b27c-39eac9354323';</code>
透過為id值正確使用單引號,可以確保PostgreSQL將其解釋為字串常數,從而避免「列不存在」錯誤並成功執行刪除查詢。
以上是為什麼我的 PostgreSQL DELETE 查詢顯示「列不存在」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!