欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

yii2 事务不回滚

程序员文章站 2022-05-24 15:58:13
...

yii2 事务不回滚
子表保存后事务不回滚,主表还是有一条数据,求解,谢谢!

回复内容:

yii2 事务不回滚
子表保存后事务不回滚,主表还是有一条数据,求解,谢谢!

你的代码逻辑有问题,最终都会调用commit

你应该保证当 $transaction->rollback() 执行之后跳出执行下面的代码

$t = \Yii::$app->db->beginTransaction();
try{
    if($orderModel->save()){
        ...
        if(!$re){
            throw new Exception('错误信息');
        }
        ...
    }
    $t->commit();
}catch(Excetption $e){
    $t->rollback();
    throw new Exception($e->getMessage());
}

还有看下自己的表的存储引擎是不是InnoDB

你确定代码能运行?

感觉if少了个花括号

相关标签: php yii2