mysql - Node mysql是否允许通过一个查询更新多行

标签 mysql node.js

我正在使用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/

相关文章:

mysql - 尝试在 MySQL 中定位和批量编辑 WooCommerce 价格

mysql - 错误: 1045: Access denied for user 'user' @'123.10.123.123' (using password: NO) when trying to connect

sql - 根据不同表中的列从 SELECT 中删除行

node.js - 如何通过 Express Route 使用 Mongoose-Crate 存储文件

javascript - npm - EPERM : operation not permitted on Windows

javascript - 在 Node 中 app 所需的文件中使用 app var

javascript - 文件上传时解析文件内容

php - 当 WordPress 站点从一个域转移到另一个域时更改数据库前缀和重定向 url

mysql - 从联接表中选择多行

node.js - 后台有 console.log 的 readline