Laravel 開啟資料庫事務

我愛大可樂發表於2020-07-13

laravel多表開啟事務

學習Markdown語法


  • 開啟事務

    DB::beginTransaction();//開啟事務
  • try{ } catch{ }包裹程式碼

    try{
        $user=new User();
        $user->nickname='可樂';
        $user->sex='男';
        $user->phone='150XXXXXXXXX';
        $user->address='宇宙辦事處--嗶哩嗶哩辦公室';
        if(!user->save()){
            throw new \Exception('出錯了呢');//丟擲異常
        }
        $article=new Article();
        $article->user_id=$user->id;
        $article->title='嗶哩嗶哩乾杯';
        $article->summary='這裡是嗶哩嗶哩宇宙辦事處,今天是辦事處成立10週年';
        $article->author='嗶哩嗶哩戰略忽悠局';
        $article->body='XXXXXXXXXXXXXXXXXXXXXXXX';
        if(!$article->save()){
            throw new \Exception('嗶~嗶~哩~ 嗶哩嗶哩');//丟擲異常
        }
        DB::commit();//提交至資料庫
        return response()->json(['code'=>10010,'msg'=>'發報成功']);
    }catch(\Exception $exception){
        DB::rollback();//資料庫回滾
        return response()->json(['code'=>10086,'msg'=>'訊號不好,請檢查訊號呦']);
    }
本作品採用《CC 協議》,轉載必須註明作者和本文連結
我愛大可樂

相關文章