これはexecute
の既知の問題です およびquery
mysql2
のメソッド
実用的な代替案を見つけました。
createWorklog = async ({ sqlArray }) => {
const sql = `INSERT INTO ${this.tableName}
(project_id, user_id, date, duration, task, description) VALUES ?`
const result = await query(sql, [sqlArray], true) // adding true for multiple insert
const affectedRows = result ? result.affectedRows : 0;
return affectedRows;
}
次に、クエリは次のように記述できます
return new Promise((resolve, reject) => {
const callback = ...
if (multiple) this.db.query(sql, values, callback);
else this.db.execute(sql, values, callback);
}).catch(err => {
...
...
});
}
}
この問題の詳細については、こちらをご覧ください https://github.com/sidorares/ node-mysql2 / issues / 830