我有一个node + express + mysql应用程序,必须使用以下查询更新表中的多个记录:
const setReminderSentflagQuery = 'UPDATE booking_details SET reminder_notif ="1" WHERE booking_id IN (?)';
我尝试了多种方法,但似乎没有任何效果,以下是我的尝试之一:
(所有预订都是输入数组)
jp_db.setReminderSentflag = (allBookings) => {
let allBookingsString = allBookings.join(',');
console.log("all bookings String",allBookingsString);
return new Promise((resolve,reject) => {
pool.query(setReminderSentflagQuery,[allBookingsString],(err,results) => {
if (err) {
return reject(err);
} else {
return resolve(results);
}
});
});
}
这仅更新一条记录,即第一条。我得到匹配的行之一和一个警告,我不知道为什么。
提醒设置结果OkPacket { fieldCount:0, 受影响的行:1, insertId:0 serverStatus:2 warningCount:1 消息:'(匹配的行:1已更改:1警告:1', protocol41:是的, changedRows:1} statusCode:200