laravel

Laravel Query Builder

Laravel Query Builder
Der Laravel Query Builder bietet eine einfache und bequeme Möglichkeit zum Erstellen und Ausführen von Datenbankabfragen und wird von allen Laravel-Datenbanksystemen unterstützt. Es wird verwendet, um die Laravel-Anwendung durch die PDO-Parameterbindung vor dem SQL-Injection-Angriff zu schützen. Dieses Paket kann verschiedene Arten von Datenbankoperationen ausführen, wie z CRUD (Einfügen, Auswählen, Aktualisieren und Löschen) und Aggregatfunktionen wie VERBINDUNG, SUMME, ZÄHLUNG, usw. Dieses Tutorial zeigt Ihnen, wie Sie einen Abfrage-Generator anwenden, um verschiedene CRUD-Operationen in der Datenbank auszuführen.

Voraussetzungen

Bevor Sie mit diesem Tutorial beginnen, führen Sie zunächst die folgenden Aufgaben aus.

  1. Erstellen Sie ein neues Laravel-Projekt
  2. Datenbankverbindung herstellen

Erstellen Sie eine Tabelle

Sie können eine oder mehrere Datenbanktabellen verwenden, um einen Abfragegenerator zum Ausführen verschiedener Abfragetypen anzuwenden. Eine neue Tabelle mit dem Namen Kunden, wird hier erstellt, um die Verwendungen des Abfragegenerators zu zeigen. Führen Sie den folgenden Befehl aus, um eine Migrationsdatei zum Erstellen der Struktur des structure Kunden Tabelle. Eine Migrationsdatei wird im . erstellt Datenbank/Migration Ordner nach Ausführung des Befehls.

$ php Handwerker make:migration create_clients_table

Öffnen Sie die neu erstellte Migrationsdatei und aktualisieren Sie die oben() Methode mit folgendem Code. Nach dem Ausführen des Migrationsbefehls werden sechs Felder für die Clients-Tabelle generiert. Die Felder sind ID, Name, E-Mail, Adresse, erstellt_at, und aktualisiert am.

öffentliche Funktion nach oben()

Schema::create('clients', function (Blueprint $table)
$tabelle->id();
$table->string('name');
$table->string('email');
$table->text('Adresse');
$table->timestamps();
);

Führen Sie den folgenden Befehl aus, um die Tabelle in der Datenbank basierend auf der in der Migrationsdatei definierten Struktur zu erstellen.

$ php Handwerker migrieren

Sie können die Felder der Tabelle überprüfen, indem Sie die Struktur des Kunden Tisch aus dem phpMyAdmin. Die folgende Ausgabe erscheint nach dem Öffnen der Tabellenstruktur.

Einfügen von Daten in eine Tabelle mit dem Abfragegenerator

Mit dem Abfragegenerator können Sie Daten in die Tabelle einfügen. Hier die Netz.php Datei wird verwendet, um drei Datensätze in die Kunden Tabelle und befindet sich in der Routen Mappe. Öffnen Sie die Datei und fügen Sie die folgende Route hinzu, um die Datensätze einzufügen.

Route::get('insert', function()
/* 1. Datensatz einfügen */
DB::table('clients')->insert(['name' => 'Md. ali',
'email' => '[email protected]',
'Adresse' => '12/1, Dhanmondi, Dhaka',
]);
/* 2. Datensatz einfügen */
DB::table('clients')->insert(['name' => 'Sharmin Jahan',
'email' => '[email protected]',
'Adresse' => '156, Mirpur, Dhaka',
]);
/* 3. Datensatz einfügen */
DB::table('clients')->insert(['name' => 'Mehrab Hossain',
'email' => '[email protected]',
'Adresse' => '34/A, Mohammedpur, Dhaka',
]);
/* Nachricht drucken */
Echo"

Drei Kundendatensätze werden eingefügt

);

Führen Sie die folgende URL in einem beliebigen Browser aus, nachdem Sie den Laravel-Entwicklungsserver gestartet haben, um die Daten in den Kunden Tabelle.

http://localhost:8000/insert

Im Browser erscheint nach dem Einfügen der Daten die folgende Meldung. Sie können den Inhalt der Tabelle überprüfen, indem Sie sie über das öffnen phpMyAdmin.

Lesen von Daten aus der Tabelle mit dem Abfragegenerator

Sie können verschiedene Arten von Select-Abfragen mit dem Abfrage-Generator ausführen. Die vier Datensatztypen werden mit dem Abfragegenerator in der folgenden Routenfunktion abgerufen route. Eine Ansichtsdatei namens Kunden.Klinge.php wird hier verwendet, um die aus der Tabelle abgerufenen Daten anzuzeigen, und der Code der Ansicht wird später angegeben.

Route::get('show', function()
/* Alle Datensätze der Client-Tabelle abrufen */
$clientList1 = DB::table('clients')->get();
/* Rufen Sie den ersten Datensatz der Client-Tabelle ab */
$clientList2 = DB::table('clients')->first();
/* Abrufen des dritten Datensatzes der Client-Tabelle */
$clientList3 = DB::table('clients')->find(3);
/* Rufen Sie den Namen eines Clients basierend auf der E-Mail aus der Clients-Tabelle ab */
$clientList4 = DB::table('clients')->where('email','[email protected]')->value('name');
/* Geben Sie die Werte der vier Variablen in die View-Datei zurück, um die Daten anzuzeigen
Aus der Tabelle abgerufen */
return view('clients', ['clientList1' => $clientList1,'clientList2' => $clientList2,
'clientList3' => $clientList3, 'clientList4' => $clientList4]);
);
Kunden.Klinge.php

Liste aller Kunden



@if(@isset($clientList1))






@foreach($clientList1 als $client1)





@endforeach
Kunden IDNameAdresseEmail
$client1->id$client1->name$client1->Adresse$client1->E-Mail

@endif

@if(@isset($clientList2->name))

Der Name des ersten Kunden ist $clientList2->name


@endif
@if(@isset($clientList3->email))

Die E-Mail des 3. Kunden lautet $clientList3->E-Mail


@endif
@if(@isset($clientList4))

Der Name des Kunden laut E-Mail lautet $clientList4


@endif

Führen Sie die folgende URL in einem beliebigen Browser aus, nachdem Sie den Laravel-Entwicklungsserver gestartet haben, um die Daten aus dem Kunden Tabelle.

http://localhost:8000/show

Die folgende Ausgabe erscheint im Browser nach dem Ausführen der URL. Der Inhalt von $clientList1 Variable wird tabellarisch angezeigt und die Ausgabe von $clientList2, $clientList3 und $clientList4 werden in einer Zeile angezeigt.

Aktualisieren von Daten mit dem Abfrage-Generator

Mit dem Abfrage-Generator können Sie einzelne oder mehrere Felder basierend auf einzelnen oder mehreren Bedingungen aktualisieren. Gemäß der folgenden Routenfunktion ist der Wert des Name Feld wird basierend auf dem Wert des aktualisiert Email Feld. Als nächstes wird der Inhalt aller Datensätze im Kunden Tabelle wird abgerufen und an die Ansichtsdatei gesendet, um den aktualisierten Inhalt der Tabelle zu überprüfen.

Route::get('update', function()
DB::table('clients')->where('id', 1)->update(['name' => 'Mohammed Ali']);
Echo"
Name des ersten Kunden wird aktualisiert
";
$clientList1 = DB::table('clients')->get();
return view('clients', ['clientList1' => $clientList1]);
);

Führen Sie die folgende URL in einem beliebigen Browser aus, nachdem Sie den Laravel-Entwicklungsserver gestartet haben, um die Daten des Kunden Tabelle.

http://localhost:8000/update

Die folgende Ausgabe erscheint im Browser nach dem Ausführen der URL. Der Inhalt der $clientList1 Variable wird tabellarisch angezeigt. Hier ist der Wert des Name Feld wird mit dem neuen Wert aktualisiert.

Daten mit Query Builder löschen

Alle Datensätze oder ein bestimmter Datensatz können mit dem Query Builder gelöscht werden. Die folgende Routenfunktion löscht den dritten Eintrag im Kunden Tabelle, rufen Sie alle Datensätze nach dem Löschen ab und geben Sie die Werte in die Ansichtsdatei zurück.

Route::get('delete', function()
DB::table('clients')->where('id', '=', 3)->delete();
Echo"
Der dritte Datensatz wird gelöscht
";
$clientList1 = DB::table('clients')->get();
return view('clients', ['clientList1' => $clientList1]);
);

Führen Sie die folgende URL in einem beliebigen Browser aus, nachdem Sie den Laravel-Entwicklungsserver gestartet haben, um einen Datensatz aus dem Kunden Tabelle.

http://localhost:8000/delete

Die folgende Ausgabe erscheint im Browser nach dem Ausführen der URL. Der Inhalt der $clientList1 Variable wird tabellarisch angezeigt. Hier wird der dritte Datensatz aus der Tabelle gelöscht.

Videoanleitung

Fazit

Die grundlegende Verwendung des Query Builders wird in diesem Tutorial gezeigt, um neuen Laravel-Entwicklern zu helfen, Methoden zum Ausführen von Datenbankabfragen in der Laravel-Anwendung besser zu verstehen.

Schlacht um Wesnoth 1.13.6 Entwicklung veröffentlicht
Schlacht um Wesnoth 1.13.6, das letzten Monat veröffentlicht wurde, ist die sechste Entwicklungsversion im 1.13.x-Serie und bietet eine Reihe von Verb...
So installieren Sie League of Legends auf Ubuntu 14.04
Wenn Sie ein Fan von League of Legends sind, dann ist dies eine Gelegenheit für Sie, League of Legends zu testen. Beachten Sie, dass LOL von PlayOnLin...
Installieren Sie das neueste OpenRA-Strategiespiel auf Ubuntu Linux
OpenRA ist eine Libre/Free Real Time Strategy Game Engine, die die frühen Westwood-Spiele wie den Klassiker Command & Conquer: Red Alert Red nachbilde...