typeorm 事务

// 创建一个新的 query runner
const queryRunner = dataSource.createQueryRunner()

// 使用我们新的 query runner 建立真实的数据库连接
await queryRunner.connect()

// 现在我们可以在 query runner 上执行任何查询,例如:
await queryRunner.query("SELECT * FROM users")

// 我们也可以访问与 query runner 创建的连接协同工作的实体管理器:
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 {
    // 你需要释放手动创建的 query runner:
    await queryRunner.release()
}

 

posted @ 2026-08-13 14:09  liliyou  阅读(3)  评论(0)    收藏  举报