Eloquent/Fluent を使用して単一のクエリから複数行のデータをバッチ挿入する
質問:
ユーザー ID とアカウント ID の配列を返すクエリがあります。これらの行を別のテーブルに挿入して、結果のテーブルが次の形式になるようにするにはどうすればよいですか:
<code>ID | user_id | subject_id 1 | 8 | 9 2 | 8 | 2</code>
答え:
Laravel では、テーブルにデータをバッチ挿入するための 2 つの方法 (Eloquent または Query Builder を使用する) が提供されています。
雄弁な方法:
<code class="language-php">$data = [ ['user_id' => 8, 'subject_id' => 9], ['user_id' => 8, 'subject_id' => 2], ]; UserSubject::insert($data);</code>
クエリビルダーメソッド:
<code class="language-php">DB::table('table')->insert($data);</code>
どちらのメソッドも連想配列を受け入れます。各配列は挿入される行を表します。ミューテーター (タイムスタンプなど) は、Eloquent メソッドを使用する場合には呼び出されますが、Query Builder メソッドを使用する場合には呼び出されません。
以上がLaravelでEloquentまたはQuery Builderを使用して複数の行を一括挿入する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。