yii2事务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  • $transaction = Yii::$app->db->beginTransaction();
try{
    //删除$model中的数据
    $res $model->deleteAll($cond);
    if(!$res)
        throw new \Exception('操作失败!');
     
    //删除$model对应的$relation中的数据
    $rt $relation->deleteAll(['polymeric_id'=>$cond['id']]);
    if(!$rt)
        throw new \Exception('操作失败!');
     
    //以上执行都成功,则对数据库进行实际执行
    $transaction->commit(); 
    return Helper::arrayReturn(['status'=>true]);
}catch (\Exception $e){
    //如果抛出错误则进入catch,先callback,然后捕获错误,返回错误
    $transaction->rollBack();
    return Helper::arrayReturn(['status'=>false,'msg'=>$e->getMessage()]);
}
posted @ 2017-10-11 16:18  郭帅  阅读(80)  评论(0)    收藏  举报