簡體   English   中英

未找到 Postgres 列錯誤 (node-postgres)

[英]Postgres column not found error (node-postgres)

我正在查詢我的數據庫以更新一個值,但是,我一直遇到來自 nodejs 的這個錯誤。 當我從命令行執行此操作時,查詢有效,但從 javascript 代碼中它以同樣的方式失敗,列“值”不存在。

client.query("UPDATE chore_list SET " + req.body.choseday.toLowerCase() + "=" +  req.user.email  + " WHERE chore ='" + req.params.chorename + "'")

在終端中,我在最后一個參數周圍加上了單引號,它可以工作,但是,在上面的 nodejs 代碼中,無論如何都會出現錯誤。

錯誤:列“測試”不存在

嘗試以下操作(注意指定值周圍的附加引號):

let userEmail = req.user.email.replace(/'/g, "''");
client.query(
    "UPDATE chore_list
        SET " + req.body.choseday.toLowerCase() + " = '" +  userEmail  + "'
        WHERE chore ='" + req.params.chorename + "'"
);

編輯:我還添加了單引號替換(通過 2 個單引號)以防止您的(可能)不安全值中斷 SQL 字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM