我正在使用mysql对于 Node ,我必须更新多行,并且我想通过一个查询来完成此操作。我能够插入多行,但无法更新多行,下面是代码片段
var update_tasks="UPDATE tasks SET phy_1_id=? , phy_2_id=? where id=?";
db.query(update_tasks,[[-1,-1,10086],[-1,-1,10087]],function (er, results, fields){
if (er) {console.log("Error "+JSON.stringify(er));return res.status(500).send(er);}
else{
return res.status(200).json(results);
}
})
你能告诉我该怎么做吗?
最佳答案
你的方向是正确的,但事情不应该是这样的。参数查询取决于列数据类型,例如字符串,在更新列之前将数组转换为字符串
var pkId = 'unique12312'
var update_tasks="UPDATE tasks SET phy_1_id=? , phy_2_id=? where id=?";
db.query(update_tasks,[[-1,-1,10086].toString(),[-1,-1,10087].toString(), pkId],function (er, results, rows, fields){
if (er) {
console.log("Error "+JSON.stringify(er));
return res.status(500).send(er);
} else{
return res.status(200).json(results);
}
});
关于mysql - Node mysql是否允许通过一个查询更新多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42500679/