0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Laravel】データベースのトランザクションの書き方

Last updated at Posted at 2022-10-21

トランザクションを実行するtry~catch処理

トランザクションとは処理をひとまとめにすることで
途中でエラーが発生した場合に
処理全体を中断ではなくキャンセルすることができます


use Illuminate\Support\Facades\DB;


// トランザクション開始

class コントローラー名 extends Controller
{
        DB::beginTransaction();

        try {
            // 例外が発生する可能性のあるコードを記述します
            // データベースの操作コードや
            // インスタンスの呼出コードなどを記述します
        
             DB::commit(); //データベースに反映します。
        } catch (Exception $e) {
            // 例外が発生した場合に行う処理を記述します
            // $eは任意の名前の変数です
        
             DB::rollBack(); // 処理をトランザクション開始まで戻します
        }

}

try(試す) catch(捉える)

tryの内側にて処理を実行し
catchの内側にてエラーが起きてしまった場合の処理を実行します
cathcの内側にエラーメッセージを入力したり
最後にDB::rollBack();を記述することで処理前に戻すことができます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?