transactions - Node.js 7 如何将sequelize事务与async/await一起使用?

标签 transactions sequelize.js

Node.js 7 及更高版本已经支持 async/await 语法。我应该如何在后续事务中使用 async/await?

最佳答案

let transaction;    

try {
  // get transaction
  transaction = await sequelize.transaction();

  // step 1
  await Model.destroy({ where: {id}, transaction });

  // step 2
  await Model.create({}, { transaction });

  // step 3
  await Model.update({}, { where: { id }, transaction });

  // commit
  await transaction.commit();

} catch (err) {
  // Rollback transaction only if the transaction object is defined
  if (transaction) await transaction.rollback();
}

关于transactions - Node.js 7 如何将sequelize事务与async/await一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42870374/

相关文章:

java - EJB - 事务超时

javascript - 同时使用hasOne和belongsTo有什么意义吗?

javascript - Sequelize 填充关系查询任一表

postgresql - Sequelize - 使用嵌套实体的条件搜索查询

java - 用于读取的 JPA 锁定实体

sql - 在 MS SQL Server 中,有没有办法增加 "atomically"用作计数器的列?

transactions - 是否有支持 Redis 集群上事务的 Redis 客户端(首选 Java)?

java - Oracle如何解决大量并发写操作?

node.js - 使用 Sequelize 将 Cloud Run Node 应用程序连接到 Cloud SQL

sequelize.js - 如何在使用 sequelize js orm 的模型中不使用外键关系来获取嵌套的 JSON 数组?