Laravel Consulta Builder

Laravel Consulta Builder
O Builder de consultas Laravel fornece uma maneira simples e conveniente de criar e executar consultas de banco de dados e é suportado por todos os sistemas de banco de dados Laravel. É usado para proteger a aplicação do Laravel do ataque de injeção SQL usando a ligação ao parâmetro PDO. Este pacote pode executar vários tipos diferentes de operações de banco de dados, como Crud (Insira, selecione, atualize e exclua) e funções agregadas, como União, Sum, Conde, etc. Este tutorial mostra como aplicar um construtor de consultas para executar várias operações CRUD no banco de dados.

Pré -requisitos

Antes de iniciar este tutorial, primeiro, complete as seguintes tarefas.

  1. Crie um novo projeto de Laravel
  2. Fazer conexão com o banco de dados

Crie uma tabela

Você pode usar uma ou mais tabelas de banco de dados para aplicar um construtor de consultas para executar diferentes tipos de consultas. Uma nova tabela, chamada clientes, é criado aqui para mostrar os usos do construtor de consultas. Execute o seguinte comando para criar um arquivo de migração para criar a estrutura do clientes mesa. Um arquivo de migração será criado no banco de dados/migração pasta depois de executar o comando.

$ php artesan make: migration create_clients_table

Abra o arquivo de migração recém -criado e atualize o acima() Método com o seguinte código. Seis campos serão gerados para a tabela de clientes depois de executar o comando migrate. Os campos são ID, nome, email, endereço, criou_at, e atualizado_at.

função pública up ()

Schema :: Create ('Clientes', function (Blueprint $ tabela)
$ tabela-> id ();
$ tabela-> string ('nome');
$ tabela-> string ('email');
$ tabela-> text ('endereço');
$ tabela-> timestamps ();
);

Execute o seguinte comando para criar a tabela no banco de dados com base na estrutura definida no arquivo de migração.

$ php artesan migrar

Você pode verificar os campos da tabela, abrindo a estrutura do clientes Tabela do phpmyadmin. A saída a seguir aparecerá após a abertura da estrutura da tabela.

Insira dados na tabela usando consultor de consultas

Você pode inserir dados na tabela usando o construtor de consultas. Aqui o rede.php O arquivo é usado para inserir três registros no clientes mesa e está localizado no rotas pasta. Abra o arquivo e adicione a seguinte rota para inserir os registros.

Rota :: get ('insert', function ()
/ * Insira o 1º registro */
Db :: tabela ('clientes')-> insert (['nome' => 'md. todos',
'Email' => '[email protected] ',
'endereço' => '12/1, dhanmondi, dhaka ',
]);
/ * Insira o 2º registro */
Db :: tabela ('clientes')-> inserir (['nome' => 'Sharmin Jahan',
'Email' => '[email protected] ',
'endereço' => '156, mirpur, dhaka',
]);
/ * Insira o terceiro registro */
Db :: tabela ('clientes')-> insert (['nome' => 'mehrab hossain',
'Email' => '[email protected] ',
'endereço' => '34/a, mohammedpur, dhaka ',
]);
/ * Mensagem de impressão */
eco "

Três registros do cliente são inseridos

);

Execute o seguinte URL em qualquer navegador depois de iniciar o servidor de desenvolvimento de Laravel para inserir os dados no clientes mesa.

http: // localhost: 8000/inserir

A mensagem a seguir aparecerá no navegador depois de inserir os dados. Você pode verificar o conteúdo da tabela, abrindo -o do phpmyadmin.

Leia os dados da tabela usando o Consulta Builder

Você pode executar diferentes tipos de consultas selecionadas usando o Consulta Builder. Os quatro tipos de registros são recuperados usando o construtor de consultas na função de rota a seguir. Um arquivo de visualização chamado clientes.lâmina.php é usado aqui para mostrar os dados recuperados da tabela e o código da visualização é dado posteriormente.

Rota :: get ('show', function ()
/ * Recupere todos os registros da tabela de clientes */
$ clientList1 = db :: tabela ('clientes')-> get ();
/ * Recupere o primeiro registro da tabela de clientes */
$ clientlist2 = db :: tabela ('clientes')-> primeiro ();
/ * Recupere o terceiro registro da tabela de clientes */
$ clientlist3 = db :: tabela ('clientes')-> encontre (3);
/ * Recupere o nome de um cliente com base no email da tabela de clientes */
$ clientList4 = db :: tabela ('clientes')-> where ('email', '[email protected] ')-> value (' nome ');
/* Retorne os valores das quatro variáveis ​​no arquivo de exibição para mostrar os dados
Recuperado da tabela */
Return View ('Clients', ['ClientList1' => $ ClientList1, 'ClientList2' => $ ClientList2,
'ClientList3' => $ clientList3, 'ClientList4' => $ clientList4]);
);
clientes.lâmina.php

Lista de todos os clientes



@if (@isset ($ clientList1))






@foreach ($ clientList1 como $ client1)





@endForEach
ID do ClienteNomeEndereçoE-mail
$ client1-> id$ client1-> nome$ client1-> endereço$ client1-> email

@fim se

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

O nome do 1º cliente é $ clientList2-> nome


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

O email do terceiro cliente é $ clientList3-> email


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

O nome do cliente com base no email é $ clientList4


@fim se

Execute o seguinte URL em qualquer navegador depois de iniciar o servidor de desenvolvimento de Laravel para ler os dados do clientes mesa.

http: // localhost: 8000/show

A saída a seguir aparecerá no navegador depois de executar o URL. O conteúdo de $ ClientList1 A variável é mostrada em forma tabular e a saída de $ clientlist2, $ clientlist3 e $ ClientList4 são mostrados em uma linha.

Atualize dados usando o Construtor Builder

Você pode atualizar campos únicos ou múltiplos com base em condições únicas ou múltiplas usando o construtor de consultas. De acordo com a seguinte função da rota, o valor do nome O campo será atualizado com base no valor do e-mail campo. Em seguida, o conteúdo de todos os registros no clientes A tabela será recuperada e enviada ao arquivo de exibição para verificar o conteúdo atualizado da tabela.

Rota :: get ('update', function ()
Db :: tabela ('clientes')-> where ('id', 1)-> update (['nome' => 'mohammed ali']);
eco "nome do primeiro cliente é atualizado";
$ clientList1 = db :: tabela ('clientes')-> get ();
Return View ('Clients', ['ClientList1' => $ ClientList1]);
);

Execute o seguinte URL em qualquer navegador depois de iniciar o servidor de desenvolvimento de Laravel para atualizar os dados do clientes mesa.

http: // localhost: 8000/atualização

A saída a seguir aparecerá no navegador depois de executar o URL. O conteúdo do $ ClientList1 A variável é mostrada em forma tabular. Aqui, o valor do nome O campo é atualizado com o novo valor.

Excluir dados usando consultor de consultas

Todos os registros ou um registro específico podem ser excluídos usando o construtor de consultas. A função de rota a seguir excluirá o terceiro recorde no clientes tabela, recupere todos os registros após a exclusão e retorne os valores ao arquivo de visualização.

Rota :: get ('delete', function ()
Db :: tabela ('clientes')-> onde ('id', '=', 3)-> delete ();
eco "o terceiro registro é excluído";
$ clientList1 = db :: tabela ('clientes')-> get ();
Return View ('Clients', ['ClientList1' => $ ClientList1]);
);

Execute o seguinte URL em qualquer navegador depois de iniciar o servidor de desenvolvimento de Laravel para excluir um registro do clientes mesa.

http: // localhost: 8000/Excluir

A saída a seguir aparecerá no navegador depois de executar o URL. O conteúdo do $ ClientList1 A variável é mostrada em forma tabular. Aqui, o terceiro recorde é excluído da tabela.

Vídeo tutorial

Conclusão

Os usos básicos do construtor de consultas são mostrados neste tutorial para ajudar novos desenvolvedores de Laravel a entender melhor os métodos para executar consultas de banco de dados no aplicativo Laravel.