首頁 > 資料庫 > mysql教程 > 為什麼 Postgres 返回'列'5837-2016-08-24_09-12-22”不存在”,如何修復它?

為什麼 Postgres 返回'列'5837-2016-08-24_09-12-22”不存在”,如何修復它?

Susan Sarandon
發布: 2025-01-12 09:54:42
原創
211 人瀏覽過

Why does Postgres return

解決PostgreSQL錯誤:「列「5837-2016-08-24_09-12-22」不存在」

遇到此錯誤訊息時,請務必注意:列名應使用雙引號括起來,而字串常數則需要使用單引號。在本例中,錯誤發生是因為值「5837-2016-08-24_09-12-22」被誤認為是列名而不是字串字面量。

要解決此問題,可以如下修正SQL語句:

<code class="language-sql">INSERT INTO config_change_log(last_config_version, is_done, change_description )
VALUES('5837-2016-08-24_09-12-22', false, '{ ''key'':''value''}');</code>
登入後複製

透過用單引號括起字串常數,它將被正確識別為值而不是列名。

或者,您可以透過將單引號加倍來轉義資料中的單引號,如下例所示:

<code class="language-sql">INSERT INTO config_change_log(last_config_version, is_done, change_description )
VALUES('5837-2016-08-24_09-12-22', false, '{ "key":"value"}');</code>
登入後複製

這種方法確保了change_description列中的單引號被解釋為字串值的一部分,而不是導致語法錯誤。

記住,始終建議對字串常數使用單引號,對列名使用雙引號,以避免潛在衝突並確保正確的語法。透過實施這些更正,您應該能夠成功地將資料插入PostgreSQL資料庫中,而不會遇到「列不存在」錯誤。

以上是為什麼 Postgres 返回'列'5837-2016-08-24_09-12-22”不存在”,如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板