Forudsætninger
Før du starter denne tutorial, skal du først udføre følgende opgaver.
- Opret et nyt Laravel-projekt
- Opret databaseforbindelse
Opret en tabel
Du kan bruge en eller flere databasetabeller til at anvende en forespørgselsbygger til udførelse af forskellige typer forespørgsler. En ny tabel, navngivet kunder, oprettes her for at vise anvendelsen af forespørgselsbyggeren. Kør følgende kommando for at oprette en migreringsfil til oprettelse af strukturen i kunder bord. En migrationsfil oprettes i database / migration mappe efter udførelse af kommandoen.
$ php håndværkerfabrik: migration create_clients_tableÅbn den nyoprettede migreringsfil, og opdater op() metode med følgende kode. Der genereres seks felter til klienttabellen efter kørsel af migreringskommandoen. Felterne er id, navn, e-mail, adresse, oprettet_at, og opdateret_at.
offentlig funktion op ()Skema :: create ('clients', function (Blueprint $ table)
$ tabel-> id ();
$ tabel-> streng ('navn');
$ tabel-> streng ('e-mail');
$ tabel-> tekst ('adresse');
$ tabel-> tidsstempler ();
);
Kør følgende kommando for at oprette tabellen i databasen baseret på strukturen defineret i migreringsfilen.
$ php håndværker migrererDu kan kontrollere felterne i tabellen ved at åbne strukturen på kunder bord fra phpMyAdmin. Følgende output vises efter åbning af tabelstrukturen.
Indsæt data i tabel ved hjælp af Query Builder
Du kan indsætte data i tabellen ved hjælp af forespørgselsbyggeren. Her, den web.php fil bruges til at indsætte tre poster i kunder bordet, og det er placeret i ruter folder. Åbn filen, og tilføj følgende rute for at indsætte poster.
Rute :: get ('indsæt', funktion ()/ * Indsæt 1. post * /
DB :: tabel ('klienter') -> indsæt (['navn' => 'Md. ali ',
'email' => '[email protected]',
'adresse' => '12 / 1, Dhanmondi, Dhaka ',
]);
/ * Indsæt 2. post * /
DB :: tabel ('klienter') -> indsæt (['navn' => 'Sharmin Jahan',
'email' => '[e-mail-beskyttet]',
'adresse' => '156, Mirpur, Dhaka',
]);
/ * Indsæt 3. post * /
DB :: tabel ('klienter') -> indsæt (['name' => 'Mehrab Hossain',
'email' => '[e-mail-beskyttet]',
'adresse' => '34 / A, Mohammedpur, Dhaka ',
]);
/ * Udskriv besked * /
ekko "
Tre klientoptegnelser indsættes
Kør følgende URL i enhver browser efter start af Laravel-udviklingsserveren for at indsætte dataene i kunder bord.
http: // localhost: 8000 / indsæt
Følgende meddelelse vises i browseren efter indsættelse af dataene. Du kan kontrollere indholdet af tabellen ved at åbne den fra phpMyAdmin.
Læs data fra tabel ved hjælp af Query Builder
Du kan udføre forskellige typer Vælg forespørgsler ved hjælp af forespørgselsbyggeren. De fire typer optegnelser hentes ved hjælp af forespørgselsbyggeren i den følgende rutefunktion. En visningsfil med navnet kunder.klinge.php bruges her til at vise de data, der er hentet fra tabellen, og koden for visningen er angivet senere.
Rute :: get ('show', funktion ()/ * Hent alle poster i klienttabellen * /
$ clientList1 = DB :: tabel ('klienter') -> get ();
/ * Hent den første post i klientetabellen * /
$ clientList2 = DB :: tabel ('klienter') -> første ();
/ * Hent den tredje post i klientetabellen * /
$ clientList3 = DB :: tabel ('klienter') -> find (3);
/ * Hent navnet på en klient baseret på e-mailen fra klienttabellen * /
$ clientList4 = DB :: tabel ('klienter') -> hvor ('e-mail', '[e-mail-beskyttet]') -> værdi ('navn');
/ * Returner værdierne for de fire variabler i visningsfilen for at vise dataene
Hentet fra bordet * /
returneringsvisning ('clients', ['clientList1' => $ clientList1, 'clientList2' => $ clientList2,
'clientList3' => $ clientList3, 'clientList4' => $ clientList4]);
);
kunder.klinge.php
Liste over alle klienter
@if (@isset ($ clientList1))
Klient-id | Navn | Adresse | |
---|---|---|---|
$ client1-> id | $ client1-> navn | $ client1-> adresse | $ client1-> email |
@Afslut Hvis
@if (@isset ($ clientList2-> navn))
Navnet på den første klient er $ clientList2-> navn
@Afslut Hvis
@if (@isset ($ clientList3-> e-mail))
Den 3. klients e-mail er $ clientList3-> email
@Afslut Hvis
@if (@isset ($ clientList4))
Navnet på klienten baseret på e-mail er $ clientList4
@Afslut Hvis
Kør følgende URL i enhver browser efter start af Laravel-udviklingsserveren for at læse dataene fra kunder bord.
http: // localhost: 8000 / show
Følgende output vises i browseren efter udførelse af URL'en. Indholdet af $ clientList1 variabel er vist i tabelform og output af $ clientList2, $ clientList3 og $ clientList4 vises i en linje.
Opdater data ved hjælp af Query Builder
Du kan opdatere enkelte eller flere felter baseret på enkelte eller flere betingelser ved hjælp af forespørgselsbyggeren. I henhold til følgende rutefunktion er værdien af navn felt opdateres baseret på værdien af e-mail Mark. Dernæst indholdet af alle poster i kunder tabellen hentes og sendes til visningsfilen for at kontrollere det opdaterede indhold i tabellen.
Rute :: get ('opdatering', funktion ()DB :: tabel ('klienter') -> hvor ('id', 1) -> opdatering (['navn' => 'Mohammed Ali']);
ekko "
$ clientList1 = DB :: tabel ('klienter') -> get ();
returneringsvisning ('clients', ['clientList1' => $ clientList1]);
);
Kør følgende URL i enhver browser efter start af Laravel-udviklingsserveren for at opdatere dataene fra kunder bord.
http: // localhost: 8000 / opdatering
Følgende output vises i browseren efter udførelse af URL'en. Indholdet af $ clientList1 variabel er vist i tabelform. Her er værdien af navn felt opdateres med den nye værdi.
Slet data ved hjælp af Query Builder
Alle poster eller en bestemt post kan slettes ved hjælp af forespørgselbyggeren. Den følgende rutefunktion sletter den tredje post i kunder Hent alle poster efter sletning, og returner værdierne i visningsfilen.
Rute :: get ('delete', funktion ()DB :: tabel ('klienter') -> hvor ('id', '=', 3) -> slet ();
ekko "
$ clientList1 = DB :: tabel ('klienter') -> get ();
returneringsvisning ('clients', ['clientList1' => $ clientList1]);
);
Kør følgende URL i enhver browser efter start af Laravel-udviklingsserveren for at slette en post fra kunder bord.
http: // localhost: 8000 / slet
Følgende output vises i browseren efter udførelse af URL'en. Indholdet af $ clientList1 variabel er vist i tabelform. Her slettes den tredje post fra tabellen.
Video tutorial Konklusion
Konklusion
De grundlæggende anvendelser af forespørgselsbyggeren er vist i denne vejledning til at hjælpe nye Laravel-udviklere med bedre at forstå metoder til udførelse af databaseforespørgsler i Laravel-applikationen.