Condiții prealabile
Înainte de a începe acest tutorial, mai întâi, finalizați următoarele activități.
- Creați un nou proiect Laravel
- Faceți conexiunea la baza de date
Creați un tabel
Puteți utiliza una sau mai multe tabele de baze de date pentru a aplica un generator de interogări pentru executarea diferitelor tipuri de interogări. Un nou tabel, numit clienți, este creat aici pentru a arăta utilizările constructorului de interogări. Rulați următoarea comandă pentru a crea un fișier de migrare pentru crearea structurii fișierului clienți masa. Un fișier de migrare va fi creat în baza de date / migrarea după executarea comenzii.
$ php artisan make: migration create_clients_tableDeschideți fișierul de migrare nou creat și actualizați fișierul sus() metoda cu următorul cod. Șase câmpuri vor fi generate pentru tabela clienților după executarea comenzii migrare. Câmpurile sunt id, nume, e-mail, adresă, created_at, și actualizat_at.
funcție publică sus ()Schema :: create („clienți”, funcție (Blueprint $ tabel)
$ tabel-> id ();
$ tabel-> șir ('nume');
$ tabel-> șir ('e-mail');
$ tabel-> text ('adresă');
$ table-> timestamps ();
);
Rulați următoarea comandă pentru a crea tabelul în baza de date pe baza structurii definite în fișierul de migrare.
$ php artisan migreazăPuteți verifica câmpurile tabelului deschizând structura fișierului clienți masă din phpMyAdmin. Următoarea ieșire va apărea după deschiderea structurii tabelului.
Introduceți date în tabel folosind Query Builder
Puteți insera date în tabel folosind generatorul de interogări. Aici web.php fișier este utilizat pentru a insera trei înregistrări în clienți masă și se află în rute pliant. Deschideți fișierul și adăugați următorul traseu pentru a insera înregistrările.
Route :: get ('insert', function ()/ * Introduceți prima înregistrare * /
DB :: table ('clients') -> insert (['name' => 'Md. ali ',
'email' => '[email protected]',
'address' => '12 / 1, Dhanmondi, Dhaka ',
]);
/ * Introduceți a doua înregistrare * /
DB :: table ('clients') -> insert (['name' => 'Sharmin Jahan',
'email' => '[email protected]',
'address' => '156, Mirpur, Dhaka',
]);
/ * Introduceți a treia înregistrare * /
DB :: table ('clients') -> insert (['name' => 'Mehrab Hossain',
'email' => '[email protected]',
'address' => '34 / A, Mohammedpur, Dhaka ',
]);
/ * Tipărește mesajul * /
ecou "
Sunt introduse trei înregistrări client
Rulați următoarea adresă URL în orice browser după pornirea serverului de dezvoltare Laravel pentru a insera datele în clienți masa.
http: // localhost: 8000 / insert
Următorul mesaj va apărea în browser după introducerea datelor. Puteți verifica conținutul tabelului deschizându-l din phpMyAdmin.
Citiți datele din tabel folosind Query Builder
Puteți executa diferite tipuri de interogări Select cu ajutorul generatorului de interogări. Cele patru tipuri de înregistrări sunt recuperate folosind generatorul de interogări în următoarea funcție de rută. Un fișier de vizualizare numit clienți.lamă.php este folosit aici pentru a afișa datele preluate din tabel și codul vizualizării este dat mai târziu.
Route :: get ('show', function ()/ * Preluarea tuturor înregistrărilor din tabelul clienților * /
$ clientList1 = DB :: table ('clients') -> get ();
/ * Preluarea primei înregistrări a tabelului clienților * /
$ clientList2 = DB :: table ('clienți') -> first ();
/ * Preluarea celei de-a treia înregistrări a tabelului clienților * /
$ clientList3 = DB :: table ('clients') -> find (3);
/ * Preluarea numelui unui client pe baza e-mailului din tabelul clienților * /
$ clientList4 = DB :: table ('clienți') -> unde ('e-mail', '[e-mail protejat]') -> valoare ('nume');
/ * Returnați valorile celor patru variabile în fișierul de vizualizare pentru a afișa datele
Adus din tabel * /
vizualizare return ('clients', ['clientList1' => $ clientList1, 'clientList2' => $ clientList2,
'clientList3' => $ clientList3, 'clientList4' => $ clientList4]);
);
clienți.lamă.php
Lista tuturor clienților
@if (@isset ($ clientList1))
ID-ul clientului | Nume | Abordare | |
---|---|---|---|
$ client1-> id | $ client1-> nume | $ client1-> adresa | $ client1-> email |
@endif
@if (@isset ($ clientList2-> name))
Numele primului client este $ clientList2-> name
@endif
@if (@isset ($ clientList3-> email))
Adresa de e-mail a celui de-al 3-lea client este $ clientList3-> email
@endif
@if (@isset ($ clientList4))
Numele clientului pe baza e-mailului este $ clientList4
@endif
Rulați următoarea adresă URL în orice browser după pornirea serverului de dezvoltare Laravel pentru a citi datele din clienți masa.
http: // localhost: 8000 / show
Următoarea ieșire va apărea în browser după executarea adresei URL. Conținutul $ clientList1 variabila este afișată sub formă de tabel și ieșirea din $ clientList2, $ clientList3 și $ clientList4 sunt afișate într-o linie.
Actualizați datele folosind Query Builder
Puteți actualiza câmpuri unice sau multiple pe baza condițiilor unice sau multiple folosind generatorul de interogări. Conform următoarei funcții de rută, valoarea Nume câmpul va fi actualizat pe baza valorii e-mail camp. Apoi, conținutul tuturor înregistrărilor din clienți tabelul va fi recuperat și trimis în fișierul de vizualizare pentru a verifica conținutul actualizat al tabelului.
Route :: get ('update', function ()DB :: table ('clients') -> where ('id', 1) -> update (['name' => 'Mohammed Ali']);
ecou "
$ clientList1 = DB :: table ('clients') -> get ();
vizualizare return ('clients', ['clientList1' => $ clientList1]);
);
Rulați următoarea adresă URL în orice browser după pornirea serverului de dezvoltare Laravel pentru a actualiza datele din clienți masa.
http: // localhost: 8000 / actualizare
Următoarea ieșire va apărea în browser după executarea adresei URL. Conținutul $ clientList1 variabila este afișată sub formă de tabel. Aici, valoarea Nume câmpul este actualizat cu noua valoare.
Ștergeți datele folosind Query Builder
Toate înregistrările sau o anumită înregistrare pot fi șterse folosind generatorul de interogări. Următoarea funcție de rută va șterge a treia înregistrare din clienți tabel, preluați toate înregistrările după ștergere și returnați valorile în fișierul de vizualizare.
Route :: get ('șterge', funcție ()DB :: table ('clients') -> where ('id', '=', 3) -> delete ();
ecou "
$ clientList1 = DB :: table ('clienți') -> get ();
vizualizare return ('clients', ['clientList1' => $ clientList1]);
);
Rulați următoarea adresă URL în orice browser după pornirea serverului de dezvoltare Laravel pentru a șterge o înregistrare din clienți masa.
http: // localhost: 8000 / șterge
Următoarea ieșire va apărea în browser după executarea adresei URL. Conținutul $ clientList1 variabila este afișată sub formă de tabel. Aici, a treia înregistrare este ștearsă din tabel.
Tutorial video Concluzie
Concluzie
Utilizările de bază ale generatorului de interogări sunt prezentate în acest tutorial pentru a ajuta noii dezvoltatori Laravel să înțeleagă mai bine metodele de executare a interogărilor bazei de date în aplicația Laravel.