mysql事务排队情况_MySQL NodeJS错误:使用事务调用退出后无法排队查询-问答-阿里云开发者社区-阿里云...

我一直在为NodeJS和Restify实现MySQL,并且在查询方面一切都工作得很好。但是,当我想使用通过事务更新数据的功能时,出现以下错误:错误:调用退出后无法使查询入队。

这是跟踪:

(node:10877) UnhandledPromiseRejectionWarning: Error: Cannot enqueue Query after invoking quit. at Protocol._validateEnqueue (/home/node_modules/mysql/lib/protocol/Protocol.js:215:16) at Protocol._enqueue (/home/node_modules/mysql/lib/protocol/Protocol.js:138:13) at Connection.query (/home/node_modules/mysql/lib/Connection.js:201:25) at Connection.beginTransaction (/home/node_modules/mysql/lib/Connection.js:154:15) at Promise (/home/app/mysql/repository/ClientDao.ts:56:23) at new Promise (

) at ClientDao.updateIps (/home/app/mysql/repository/ClientDao.ts:55:16) at /home/app/routes/ips/put.ts:22:31 at Generator.next (

) at fulfilled (/home/app/routes/ips/put.ts:5:58) 这是代码:

this.conn.connect(); return new Promise

((resolve, reject) => { this.conn.beginTransaction( (err) => { if(err) { reject(err); return; } this.conn.query('UPDATE client SET ips_allowed = ? WHERE id = ?', [ips, client.id], (error, results, fields) => { if(error) { return this.conn.rollback(() => reject(error)); } this.conn.commit((error) => { if(error) { return this.conn.rollback(() => reject(error)); } this.conn.end(); }); });

});

});

如果有人可以帮助我看到错误,我将非常感谢。就像我之前说过的,只有在交易中才会发生这种情况。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值