まず、バルクインサートするデータを含む配列を作成します。例えば、次のような配列があるとします。
$data = [
['name' => 'John', 'age' => 25],
['name' => 'Jane', 'age' => 30],
['name' => 'Bob', 'age' => 35],
];
次に、Yii2のActiveRecordのbatchInsert()
メソッドを使用して、データベースにバルクインサートします。以下は使用例です。
Yii::$app->db->createCommand()->batchInsert('user', ['name', 'age'], $data)->execute();
この例では、user
というテーブルにname
とage
の2つのカラムを持つデータをバルクインサートしています。
batchInsert()
メソッドの第1引数にはテーブル名、第2引数にはカラム名の配列、第3引数にはバルクインサートするデータの配列を指定します。
バルクインサートが成功すると、execute()
メソッドは影響を受けた行の数を返します。
これで、Yii2フレームワークでのバルクインサートの方法を学びました。バルクインサートを使用することで、大量のデータを効率的にデータベースに挿入することができます。