首頁 > 後端開發 > php教程 > 如何使用 Eloquent 或查詢產生器在 Laravel 中執行批次插入?

如何使用 Eloquent 或查詢產生器在 Laravel 中執行批次插入?

DDD
發布: 2024-11-21 06:06:09
原創
593 人瀏覽過

How to Perform Bulk Inserts in Laravel Using Eloquent or Query Builder?

在 Laravel 中使用 Eloquent 或 Fluent 執行批次插入

在 Laravel 中,批次插入資料輕而易舉,您可以使用 Eloquent ORM 或 Fluent查詢建構器

考慮以下查詢:

$query = UserSubject::where('user_id', Auth::id())
                    ->select('subject_id')
                    ->get();
登入後複製

這將產生輸出:

[{"user_id":8,"subject_id":9},{"user_id":8,"subject_id":2}]
登入後複製

您的目標是將這些資料傳輸到單獨的表中,產生如下結構:

ID | user_id | subject_id
1   | 8       | 9
2   | 8       | 2
登入後複製

要執行此批次插入,您可以採用下面概述的方法之一:

雄辯方法:

$data = [
    ['user_id' => 8, 'subject_id' => 9],
    ['user_id' => 8, 'subject_id' => 2]
];

UserSubject::insert($data);
登入後複製

此方法利用變異器和時間戳記。

查詢產生器方法:

$data = [
    ['user_id' => 8, 'subject_id' => 9],
    ['user_id' => 8, 'subject_id' => 2]
];

DB::table('user_subject')->insert($data);
登入後複製

雖然此方法更直接,但它不會呼叫變異器.

以上是如何使用 Eloquent 或查詢產生器在 Laravel 中執行批次插入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板