[PHP] LaravelのEloquentで全件削除する方法
こんにちは、@yoheiMuneです。
LaravelのEloquentを用いた場合の、全件削除の実装方法をブログに書きたいと思います。
最後になりますが本ブログでは、フロントエンド、PHP、サーバー、インフラ、Swift、Node.js、Python、Java、Linux、機械学習、などの技術トピックを発信をしていきます。「プログラミングで困ったその時の、解決の糸口に!」そんな目標でブログを書き続けています。ぜひ、本ブログのRSSやTwitterをフォローして貰えたら嬉しいです ^ ^
最後までご覧頂きましてありがとうございました!
LaravelのEloquentを用いた場合の、全件削除の実装方法をブログに書きたいと思います。
目次
対象バージョン
Laravel5.6以上を対象としています。他のバージョンでは違う場合がありますので、適宜読替えをお願いします。Eloquentで全件削除する(方法1)
Eloquentで全件削除するには、以下のように実装します。// 全件削除する User::query()->delete();ポイントは
query()
関数を呼ぶことでクエリにして、その後はクエリビルダーとしてdelete()
を呼び出します。Eloquentで全件削除する(方法2)
トランケートを用いることも可能です。トランケートの場合、DBの自動採番もリセットできます。しかし、ロールバックができないので注意が必要です。User::truncate();
クエリビルダを用いて全件削除する
クエリビルダを用いても全件削除できます。// 方法1:deleteで削除 DB::table('users')->delete(); // 方法2:トランケートで削除 DB::table('users')->truncate();ただ、テーブル名が文字列になってリファクタリングやコード補完がしづらいので、できればEloquentを使いたいところです。
最後に
Laravel案件をいくつかやっていますが、ノウハウがたまると爆速開発できるから良いですね〜。いっぱいブログにもアウトプットしていきたいと思いますので、ぜひ今後もご確認頂けたら幸いです。最後になりますが本ブログでは、フロントエンド、PHP、サーバー、インフラ、Swift、Node.js、Python、Java、Linux、機械学習、などの技術トピックを発信をしていきます。「プログラミングで困ったその時の、解決の糸口に!」そんな目標でブログを書き続けています。ぜひ、本ブログのRSSやTwitterをフォローして貰えたら嬉しいです ^ ^
最後までご覧頂きましてありがとうございました!