首页 >数据库 >mysql教程 >如何使用 Eloquent 或 Laravel 中的查询生成器将多行插入数据库?

如何使用 Eloquent 或 Laravel 中的查询生成器将多行插入数据库?

Susan Sarandon
Susan Sarandon原创
2025-01-12 20:07:44555浏览

How to Insert Multiple Rows into a Database Using Eloquent or the Query Builder in Laravel?

使用 Laravel 的 Eloquent 和查询生成器高效插入多个数据库行

本指南演示了如何使用 Laravel 的 Eloquent ORM 和查询生成器将多行插入数据库表中。 我们将重点关注从单个查询结果中高效批量插入的技术。

使用 Eloquent 进行批量插入

Eloquent 的 insert 方法提供了一种执行批量插入的简化方法。 这种方法自动处理模型变异器,包括时间戳。

<code class="language-php">$data = [
    ['user_id' => 'Coder 1', 'subject_id' => 4096],
    ['user_id' => 'Coder 2', 'subject_id' => 2048],
    // ... more data rows
];

Model::insert($data);</code>

利用查询生成器进行批量插入

Laravel 查询生成器在 insert 外观上提供了替代的 DB 方法。 此方法绕过了 Eloquent 的模型变异器,提供了一种稍快但灵活性较差的方法。

<code class="language-php">$data = [
    ['user_id' => 'Coder 1', 'subject_id' => 4096],
    ['user_id' => 'Coder 2', 'subject_id' => 2048],
    // ... more data rows
];

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

这两种方法都可以有效处理大量行的批量插入,从而简化 Laravel 应用程序中的数据库交互。 考虑模型变异器功能的需求,选择最适合您需求的方法。

以上是如何使用 Eloquent 或 Laravel 中的查询生成器将多行插入数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn