我有一个名为UserRequests的表。我需要将RequestStatus更新为Completed,Time更新为当前日期时间以获得一对请求记录。我使用Node.js的mysql的模块https://github.com/mysqljs/mysqlNode.js MySQL在一个查询语句中更新多行
通常单个记录更新,我会做:
connection.query('update UserRequests set RequestStatus = ?, ReqCompletedDateTime = ? where idRequest = ?', ['Completed', new Date(), hReqId], function(err, rows){
connection.release();
});
但在我来说,我需要完成,当前日期时间的状态更新多个UserRequests行。
我在列表中获取所有更新的请求标识。问题是我如何编写查询语句来将它们全部更新到一起。
我试过使用多个查询语句,但它没有工作。其他解决方案的几个也没有工作。很少有行吟诗人的解决方案我想:
connection.query('update UserRequests set RequestStatus = ?, ReqCompletedDateTime = ? where idRequest = ?', [['Completed', new Date(), 'somerowid1'], ['Completed', new Date(), 'somerowid2']], function(err, rows){
connection.release();
});
OR
connection.query('update UserRequests set RequestStatus = ?, ReqCompletedDateTime = ? where idRequest = ?', [{'Completed', new Date(), 'somerowid1'}, {'Completed', new Date(), 'somerowid2'}], function(err, rows){
connection.release();
});
我在做什么错?
我试过这段代码,但它只更新了'somerowid1'行,somerowid2行没有更新。 – codeinprogress