https://www.typeorm.org/transactions
// 创建一个新的查询运行器
const queryRunner = dataSource.createQueryRunner()
// 使用我们的新查询运行器建立真实的数据库连接
await queryRunner.connect()
// 现在我们可以在查询运行器上执行任何查询,例如:
await queryRunner.query("SELECT * FROM users")
// 我们还可以访问使用查询运行器创建的连接的实体管理器:
const users = await queryRunner.manager.find(User)
// 现在让我们打开一个新的事务:
await queryRunner.startTransaction()
try {
// 在这个事务中执行一些操作:
await queryRunner.manager.save(user1)
await queryRunner.manager.save(user2)
await queryRunner.manager.save(photos)
// 现在提交事务:
await queryRunner.commitTransaction()
} catch (err) {
// 由于发生错误,让我们回滚所做的更改
await queryRunner.rollbackTransaction()
} finally {
// 您需要释放手动创建的查询运行器:
await queryRunner.release()
}