Batch insert in Laravel 5.2

梦想与她 提交于 2019-12-01 14:24:50

问题


I am using a API's with lot's of calculation almost 100 database fields at the end with a big Foreach loop.

In every iteration i insert data in database. I want to insert data in once at the end (Batch Insert like in CodeIgniter).

Any body have idea how to insert all data at the end of iteration. instead of every iteration it insert row in database.

I want to insert data at the end of loop. Any help or idea appreciated.


回答1:


Use insert() method for bulk insertion. First, build an array with this structure:

$data = [
    ['name' => 'John', 'age' => 25],
    ['name' => 'Maria', 'age' => 31],
    ['name' => 'Julia', 'age' => 55],
];

Then insert the data using Eloquent model:

Model::insert($data);

Or using query builder:

DB::table('table_name')->insert($data);


来源:https://stackoverflow.com/questions/41871287/batch-insert-in-laravel-5-2

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!