方法1: insert
メソッドを使用する
$data = [
['column1' => 'value1', 'column2' => 'value2'],
['column1' => 'value3', 'column2' => 'value4'],
// 追加の行をここに追加できます
];
DB::table('table_name')->insert($data);
上記の例では、table_name
に指定されたテーブルに、連想配列としてデータを渡して複数の行を挿入しています。各行のキーはテーブルのカラム名に対応し、値は挿入する値です。
方法2: insert
メソッドとmap
メソッドを組み合わせる
$data = collect([
['column1' => 'value1', 'column2' => 'value2'],
['column1' => 'value3', 'column2' => 'value4'],
// 追加の行をここに追加できます
]);
DB::table('table_name')->insert($data->map(function ($item) {
return array_merge($item, ['created_at' => now(), 'updated_at' => now()]);
})->toArray());
上記の例では、collect
関数を使用してデータをコレクションに変換し、map
メソッドを使用して各行にcreated_at
とupdated_at
の値を追加しています。最後に、toArray
メソッドを使用して配列に変換して行を挿入しています。
これらの方法を使用すると、Laravelを介して効率的にMySQLデータベースに複数の行を挿入することができます。