Heim >Backend-Entwicklung >PHP-Tutorial >yii2 事务不回滚

yii2 事务不回滚

WBOY
WBOYOriginal
2016-07-06 13:52:341204Durchsuche

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

回复内容:

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

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

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

<code>$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());
}</code>

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

你确定代码能运行?

感觉if少了个花括号

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn