Laravel 5.2 中的批量插入
Posted
技术标签:
【中文标题】Laravel 5.2 中的批量插入【英文标题】:Batch insert in Laravel 5.2 【发布时间】:2017-06-11 19:06:12 【问题描述】:我正在使用一个 API 进行大量计算,最后有一个大的 Foreach 循环,几乎 100 个数据库字段。
在每次迭代中,我都会在数据库中插入数据。我想在最后插入一次数据(像在 CodeIgniter 中那样批量插入)。
任何人都知道如何在迭代结束时插入所有数据。而不是每次迭代都会在数据库中插入行。
我想在循环结束时插入数据。任何帮助或想法表示赞赏。
【问题讨论】:
这正是我也在寻找的。 .. github.com/mavinoo/laravelBatch 【参考方案1】:使用insert()
方法进行批量插入。首先,用这种结构构建一个数组:
$data = [
['name' => 'John', 'age' => 25],
['name' => 'Maria', 'age' => 31],
['name' => 'Julia', 'age' => 55],
];
然后使用 Eloquent 模型插入数据:
Model::insert($data);
或使用查询生成器:
DB::table('table_name')->insert($data);
【讨论】:
Alexey Mezenin 的回答应该被标记为解决方案 插入后将能够获得带有响应的 Autoincrement Id以上是关于Laravel 5.2 中的批量插入的主要内容,如果未能解决你的问题,请参考以下文章