ホームページ > データベース > mysql チュートリアル > Laravelで単一のEloquentクエリを使用してデータベーステーブルに複数の行を挿入するにはどうすればよいですか?

Laravelで単一のEloquentクエリを使用してデータベーステーブルに複数の行を挿入するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-12 20:26:45
オリジナル
430 人が閲覧しました

How Can I Insert Multiple Rows into a Database Table with a Single Eloquent Query in Laravel?

Laravel での複数行の挿入の合理化

大規模なデータセットを処理するには、多くの場合、データベース テーブルに多数の行を挿入する必要があります。 各行を手動で処理するのは非効率的になる可能性があります。 Laravel の Eloquent ORM とクエリ ビルダーは、一括挿入のためのエレガントなソリューションを提供し、パフォーマンスを大幅に向上させます。

行構造を維持しながらクエリ結果セットからデータを挿入するには、一括挿入が最適です。 Eloquent は簡単な方法を提供します:

<code class="language-php">$data = $query->select(['user_id', 'subject_id'])->get()->toArray();

Model::insert($data);</code>
ログイン後にコピー

toArray() が追加されていることに注意してください。これは、データが insert メソッドに対して正しい形式であることを確認するために重要です。

代わりに、クエリ ビルダーでも同様の機能が提供されます。

<code class="language-php">DB::table('table_name')->insert($data);</code>
ログイン後にコピー

Eloquent の insert メソッドはモデル ミューテーター (タイムスタンプを含む) をトリガーすることに注意してください。これらをバイパスする必要がある場合は、クエリ ビルダーを使用すると、より直接的な制御が可能になります。

どちらの方法でも、$data 配列のサイズに関係なく、単一のデータベース クエリで複数の行を効率的に挿入できるため、反復挿入よりもはるかに効率的です。

以上がLaravelで単一のEloquentクエリを使用してデータベーステーブルに複数の行を挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート