我从Node.js服务器代码的上下文中查询mySQL数据库。一般来说,事情都很好。但是,我无法找出一种方法来判断UPDATE语句是否不更新任何行。例如,如果我有以下代码:
connection.query("UPDATE table SET columnA = valA WHERE columnB = valB;",
function(err, rows, fields) {
..some code..
}
据我所知,没有任何回调(错误,行,字段)会向我提供任何信息,告知我零行受到影响。这对我来说是重要的信息。我该如何解决这个问题?谢谢!
答案 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。
之内