从Node.js更新MySQL - 如何判断零行是否有效?

时间:2015-12-11 15:50:26

标签: javascript mysql node.js

我从Node.js服务器代码的上下文中查询mySQL数据库。一般来说,事情都很好。但是,我无法找出一种方法来判断UPDATE语句是否不更新任何行。例如,如果我有以下代码:

connection.query("UPDATE table SET columnA = valA WHERE columnB = valB;",
    function(err, rows, fields) {

   ..some code..
}

据我所知,没有任何回调(错误,行,字段)会向我提供任何信息,告知我零行受到影响。这对我来说是重要的信息。我该如何解决这个问题?谢谢!

1 个答案:

答案 0 :(得分:1)

我假设您正在使用node-mysql。已更改行的计数位于result.changedRows变量中。

尝试:

connection.query('UPDATE table SET ...', function (err, result) {
  if (err) throw err;
  console.log('changed ' + result.changedRows + ' rows');
});

您还可以获得result.affectedRows

更多信息在the docs

之内