Heim > Backend-Entwicklung > PHP-Tutorial > Wie füge ich mit Eloquent oder Query Builder mehrere Zeilen in Laravel ein?

Wie füge ich mit Eloquent oder Query Builder mehrere Zeilen in Laravel ein?

Linda Hamilton
Freigeben: 2024-11-22 17:26:15
Original
348 Leute haben es durchsucht

How to Insert Multiple Rows in Laravel Using Eloquent or Query Builder?

Einfügen mehrerer Zeilen mit Fluent

In Laravel können Sie Eloquent oder den Abfrage-Builder verwenden, um mit einer einzigen Abfrage problemlos mehrere Datenzeilen in eine Datenbanktabelle einzufügen.

Betrachten Sie die folgende Abfrage:

$query = UserSubject::where('user_id', Auth::id())->select('subject_id')->get();
Nach dem Login kopieren

Diese Abfrage ruft ein Array von ab Ergebnisse, wie zum Beispiel:

[{"user_id":8,"subject_id":9},{"user_id":8,"subject_id":2}]
Nach dem Login kopieren

Um diese Ergebnisse in eine andere Tabelle einzufügen, können Sie die folgenden Techniken verwenden:

Eloquent Approach

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

Model::insert($data); // calls mutators including timestamps
Nach dem Login kopieren

Query Builder Approach

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

DB::table('table')->insert($data); // does not call mutators
Nach dem Login kopieren

Beide Ansätze ermöglichen es Ihnen, mehrere Zeilen mit einer einzigen Abfrage einzufügen. Der Eloquent-Ansatz ruft Modellmutatoren und Zeitstempel auf, der Query Builder-Ansatz hingegen nicht.

Das obige ist der detaillierte Inhalt vonWie füge ich mit Eloquent oder Query Builder mehrere Zeilen in Laravel ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage