交易代理

未匹配的标注

事务客户端 扩展了[查询客户端](docs.adonisjs.com/reference/databa... /query-client) 并在标准查询客户端之上具有以下额外属性。

你可以通过以下方式访问事务查询客户端:

import Database from '@ioc:Adonis/Lucid/Database'
const trx = await Database.transaction()

// 对一个给定的连接
const trx = await Database
  .connection('pg')
  .transaction()

你还可以按如下方式定义事务隔离级别。

await Database.transaction({
  isolationLevel: 'read uncommitted'
})

以下是可用隔离级别的列表。

  • 读取未提交
  • 读取已提交
  • 快照
  • 可重复读取
  • 可序列化

方法/属性

以下是事务客户端类上可用的方法和属性的列表。

commit

提交交易

await trx.commit()

rollback

回滚事务

await trx.rollback()

isCompleted

查找事务是否已完成。

if (!trx.isCompleted) {
  await trx.commit()
}

Events

当事务提交或回滚时,事务客户端还会触发以下事件。

trx.once('commit', (self) => {
  console.log(self)
})
trx.once('rollback', (self) => {
  console.log(self)
})

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/adonisjs-ref/ji...

译文地址:https://learnku.com/docs/adonisjs-ref/ji...

上一篇 下一篇
贡献者:1
讨论数量: 0
发起讨论 查看所有版本


暂无话题~