Laravel query builder

Laravel query builder
Laravel Query Builder fornisce un modo semplice e conveniente per creare ed eseguire query di database ed è supportato da tutti i sistemi di database Laravel. Viene utilizzato per proteggere l'applicazione Laravel dall'attacco di iniezione SQL utilizzando il legame dei parametri PDO. Questo pacchetto può eseguire diversi tipi di operazioni di database, come Crud (Inserire, selezionare, aggiornare ed eliminare le funzioni aggregate, come ad esempio Unione, somma, conta, eccetera. Questo tutorial mostra come applicare un costruttore di query per eseguire varie operazioni CRUD nel database.

Prerequisiti

Prima di iniziare questo tutorial, prima, completa le seguenti attività.

  1. Crea un nuovo progetto Laravel
  2. Crea connessione al database

Crea una tabella

È possibile utilizzare una o più tabelle di database per applicare un costruttore di query per l'esecuzione di diversi tipi di query. Un nuovo tavolo, chiamato clienti, è creato qui per mostrare gli usi del builder query. Eseguire il comando seguente per creare un file di migrazione per la creazione della struttura del clienti tavolo. Un file di migrazione verrà creato in database/migrazione cartella dopo aver eseguito il comando.

$ PHP Artisan Make: migration create_clients_table

Apri il file di migrazione appena creato e aggiorna il su() Metodo con il seguente codice. Verranno generati sei campi per la tabella client dopo l'esecuzione del comando migrate. I campi sono ID, nome, e -mail, indirizzo, creato_at, E aggiornato_at.

funzione pubblica up ()

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

Esegui il comando seguente per creare la tabella nel database in base alla struttura definita nel file di migrazione.

$ PHP Artisan Migrate

È possibile controllare i campi della tabella aprendo la struttura del clienti tavolo dal phpmyadmin. La seguente uscita apparirà dopo aver aperto la struttura della tabella.

Inserire i dati nella tabella utilizzando query builder

È possibile inserire dati nella tabella utilizzando il costruttore di query. Qui, il ragnatela.PHP Il file viene utilizzato per inserire tre record in clienti tavolo e si trova in itinerari cartella. Apri il file e aggiungi il seguente percorso per inserire i record.

Route :: get ('insert', function ()
/ * Inserisci 1 ° record */
Db :: table ('client')-> insert (['name' => 'md. Ali ',
'email' => '[email protected],
'indirizzo' => '12/1, dhanmondi, dhaka ',
]);
/ * Inserisci 2 ° record */
Db :: table ('clienti')-> insert (['name' => 'sharmin jahan',
'email' => '[email protected],
'indirizzo' => '156, mirpur, dhaka',
]);
/ * Inserisci 3 ° record */
Db :: table ('clienti')-> insert (['name' => 'mehrab hossain',
'email' => '[email protected],
'indirizzo' => '34/a, mohammedpur, dhaka ',
]);
/ * Stampa Messaggio */
eco "

Vengono inseriti tre record client

);

Eseguire il seguente URL in qualsiasi browser dopo aver avviato il server di sviluppo Laravel per inserire i dati nel clienti tavolo.

http: // localhost: 8000/insert

Il seguente messaggio apparirà nel browser dopo aver inserito i dati. Puoi controllare il contenuto della tabella aprendolo da phpmyadmin.

Leggi i dati dalla tabella utilizzando query builder

È possibile eseguire diversi tipi di query selezionate utilizzando il builder query. I quattro tipi di record vengono recuperati utilizzando il costruttore di query nella seguente funzione di percorso. Un file di visualizzazione denominato clienti.lama.PHP viene utilizzato qui per mostrare i dati recuperati dalla tabella e il codice della vista viene fornito in seguito.

Route :: get ('show', function ()
/ * Recupera tutti i record della tabella dei client */
$ ClientList1 = db :: table ('clienti')-> get ();
/ * Recupera il primo record della tabella dei client */
$ ClientList2 = db :: table ('clienti')-> first ();
/ * Recupera il terzo record della tabella dei client */
$ ClientList3 = db :: table ('clienti')-> find (3);
/ * Recupera il nome di un client in base all'e -mail dalla tabella dei client */
$ ClientList4 = db :: table ('clienti')-> dove ('email', '[email protected] ')-> valore (' name ');
/* Restituisci i valori delle quattro variabili nel file di visualizzazione per mostrare i dati
Estratto dalla tabella */
return view ('client', ['clientList1' => $ clientList1, 'clientList2' => $ ClientList2,
'ClientList3' => $ ClientList3, 'ClientList4' => $ ClientList4]);
);
clienti.lama.PHP

Elenco di tutti i clienti



@if (@isset ($ clientList1))






@foreach ($ ClientList1 come $ Client1)





@Endforeach
Identificativo clienteNomeIndirizzoE-mail
$ client1-> id$ client1-> name$ client1-> indirizzo$ client1-> email

@finisci se

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

Il nome del primo client è $ clientList2-> name


@finisci se
@if (@isset ($ clientList3-> email))

L'e -mail del terzo client è $ clientList3-> email


@finisci se
@if (@isset ($ clientList4))

Il nome del client in base all'e -mail è $ clientList4


@finisci se

Eseguire il seguente URL in qualsiasi browser dopo aver avviato il server di sviluppo Laravel per leggere i dati dal clienti tavolo.

http: // localhost: 8000/show

Il seguente output apparirà nel browser dopo aver eseguito l'URL. Il contenuto di $ ClientList1 La variabile è mostrata in forma tabulare e l'uscita di $ ClientList2, $ ClientList3 E $ ClientList4 sono mostrati in una linea.

Aggiorna i dati utilizzando query builder

È possibile aggiornare campi singoli o più in base a condizioni singole o multiple utilizzando il costruttore di query. Secondo la seguente funzione di percorso, il valore del nome Il campo verrà aggiornato in base al valore del e-mail campo. Successivamente, il contenuto di tutti i record in clienti La tabella verrà recuperata e inviata al file di visualizzazione per verificare il contenuto aggiornato della tabella.

Route :: get ('update', function ()
Db :: table ('client')-> dove ('id', 1)-> update (['name' => 'mohammed ali']);
Echo "Il nome del primo client è aggiornato";
$ ClientList1 = db :: table ('clienti')-> get ();
return view ('client', ['clientList1' => $ clientList1]);
);

Eseguire il seguente URL in qualsiasi browser dopo aver avviato il server di sviluppo Laravel per aggiornare i dati del clienti tavolo.

http: // localhost: 8000/aggiornamento

Il seguente output apparirà nel browser dopo aver eseguito l'URL. Il contenuto del $ ClientList1 La variabile è mostrata in forma tabulare. Qui, il valore del nome Il campo viene aggiornato con il nuovo valore.

Elimina i dati utilizzando query builder

Tutti i record o un record particolare possono essere eliminati utilizzando la query builder. La seguente funzione di percorso eliminerà il terzo record in clienti Tabella, recuperare tutti i record dopo la cancellazione e restituire i valori nel file di visualizzazione.

Route :: get ('delete', function ()
Db :: table ('client')-> dove ('id', '=', 3)-> delete ();
Echo "Il terzo record è cancellato";
$ ClientList1 = db :: table ('clienti')-> get ();
return view ('client', ['clientList1' => $ clientList1]);
);

Eseguire il seguente URL in qualsiasi browser dopo aver avviato il server di sviluppo Laravel per eliminare un record dal clienti tavolo.

http: // localhost: 8000/elimina

Il seguente output apparirà nel browser dopo aver eseguito l'URL. Il contenuto del $ ClientList1 La variabile è mostrata in forma tabulare. Qui, il terzo record viene eliminato dal tavolo.

Tutorial video

Conclusione

Gli usi di base del costruttore di query sono mostrati in questo tutorial per aiutare i nuovi sviluppatori di Laravel a comprendere meglio i metodi per l'esecuzione di query di database nell'applicazione Laravel.