gpt4 book ai didi

php - Laravel Eloquent (PDO) : Check that Transaction is Active

转载 作者:行者123 更新时间:2023-12-02 20:26:22 25 4
gpt4 key购买 nike

我觉得这应该是一个简单的答案。但是,我无法在文档或其他任何地方找到直接的答案。

在 Laravel PHP 框架中,我在打开数据库事务时遇到类似以下情况:

(当然,我的例子是从我正在处理的现实世界中大大简化的,所以请不要做出“你为什么要这样做”这样的回答)。这是我感兴趣的原理。

try {

if ($conditions == $criteria) {
DB::connection('oracle')->beginTransaction();
}
// blah...

在代码的后面,我只想检查交易是否正在进行。我的条件语句的伪代码看起来像这样:

    if ( DB::connection('oracle')->transactionIsOngoing() ) {

// do some stuff with the on-going transaction
DB::connection('oracle')->commit();

// if I were to execute "DB::connection('oracle')->transactionIsOngoing()"
// again here it would return FALSE, because the commit command has
// completed the open transaction

}

我应该使用什么实际代码来替换 DB::connection('oracle')->transactionIsOngoing()

最佳答案

Illuminate\Database\ConnectionInterface::transaction 有一个 transactionLevel 属性,它返回事件事务的数量。

可在此处找到文档:https://laravel.com/api/5.6/Illuminate/Database/ConnectionInterface.html#method_transactionLevel

关于php - Laravel Eloquent (PDO) : Check that Transaction is Active,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49813977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com