【发布时间】:2020-06-06 11:10:29
【问题描述】:
假设我们在一个表中有 10 列,我们希望只输入 1 个值来更新我们的表列,并且不更改剩余值。
所以只有我们的新值会更新,不必要的值不会是 Null ...?
我问这个是因为我正在使用This code 并且我想发送 put 请求取决于我编辑的内容...
我正在使用此查询将来自 body(react) 的请求放入节点 postgres ...
router.put("/user/:nationalcode", (req, res) => {
const cols = [
req.body.nationalcode,
req.body.stockcode,
req.body.firstname,
req.body.lastname,
req.body.isenable,
req.body.isonline,
req.body.detail,
req.body.birthdate,
req.body.archive,
req.body.offlineusername
];
db.query(
`UPDATE users SET nationalcode=$1, stockcode=$2, firstname=$3, lastname=$4, isenable=$5, isonline=$6, detail=$7, birthdate=$8, archive=$9, offlineusername = $10 WHERE nationalcode = ${req.params.nationalcode}`,
cols,
function(err, result) {
if (err) {
console.log("Error. Updating : %s ", err);
}
}
);
console.log(req.body);
});
【问题讨论】:
-
只需使用普通的 UPDATE 查询。像 UPDATE table SET column = value WHERE x = y
-
您的其他列将保持不变
-
@iJamesPHP2 我用代码更新了我的问题,你能检查并解决它吗?
标签: javascript node.js reactjs postgresql