1344170
本来是下面这样封装的,但是这样子只能执行一次connection.query,有时要connection.query好几次,即对一次query完要处理再进行下一次query,那要怎么封装。 不应该是多次调用这个方法,因为每次都是new Promise,那就不属于同一次事务了。 var transactionQuery = function(sql, values,) { return new Promise((resolve, reject) => { pool.getConnection(function(err, connection) { if(err) { reject(err); } else { connection.beginTransaction(function(err) { if(err) { reject(err); } else { connection.query(sql, values, (err, result) => { if(err) { reject(err); } else { resolve(data); } }); } }); connection.release(); } }); }); }