laravel

Laravel Query Builder

Laravel Query Builder
Tvůrce dotazů Laravel poskytuje jednoduchý a pohodlný způsob vytváření a spouštění databázových dotazů a je podporován všemi databázovými systémy Laravel. Používá se k ochraně aplikace Laravel před útokem SQL Injection pomocí vazby parametrů PDO. Tento balíček může provádět několik různých typů databázových operací, například CRUD (Vložit, Vybrat, Aktualizovat a Odstranit) a agregovat funkce, jako např UNIE, SUMA, POČET, atd. V tomto kurzu se dozvíte, jak použít tvůrce dotazů k provádění různých operací CRUD v databázi.

Předpoklady

Před zahájením tohoto kurzu nejprve proveďte následující úlohy.

  1. Vytvořte nový projekt laravel
  2. Vytvořte připojení k databázi

Vytvořte tabulku

Můžete použít jednu nebo více databázových tabulek k použití Tvůrce dotazů pro provádění různých typů dotazů. Nová tabulka s názvem klienty, je zde vytvořen, aby ukázal použití tvůrce dotazů. Spuštěním následujícího příkazu vytvořte migrační soubor pro vytvoření struktury souboru klienty stůl. V souboru bude vytvořen migrační soubor databáze / migrace složka po provedení příkazu.

$ php řemeslník make: migrace create_clients_table

Otevřete nově vytvořený migrační soubor a aktualizujte nahoru() metoda s následujícím kódem. Po spuštění příkazu migrate bude pro tabulku klientů vygenerováno šest polí. Pole jsou id, jméno, e-mail, adresa, created_at, a updated_at.

veřejná funkce nahoru ()

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

Spuštěním následujícího příkazu vytvořte tabulku v databázi na základě struktury definované v migračním souboru.

$ php řemeslník migruje

Pole tabulky můžete zkontrolovat otevřením struktury souboru klienty stůl z phpMyAdmin. Po otevření struktury tabulky se zobrazí následující výstup.

Vložte data do tabulky pomocí nástroje Query Builder

Data můžete do tabulky vložit pomocí nástroje pro tvorbu dotazů. Tady web.php soubor slouží k vložení tří záznamů do souboru klienty tabulka a je umístěna v trasy složku. Otevřete soubor a přidejte následující cestu k vložení záznamů.

Route :: get ('insert', function ()
/ * Vložte 1. záznam * /
DB :: table ('clients') -> insert (['name' => 'Md. mimozemšťan,
'email' => '[e-mail chráněn]',
'address' => '12 / 1, Dhanmondi, Dhaka ',
]);
/ * Vložte druhý záznam * /
DB :: table ('clients') -> insert (['name' => 'Sharmin Jahan',
'email' => '[e-mail chráněn]',
'address' => '156, Mirpur, Dhaka',
]);
/ * Vložte 3. záznam * /
DB :: table ('clients') -> insert (['name' => 'Mehrab Hossain',
'email' => '[e-mail chráněn]',
'address' => '34 / A, Mohammedpur, Dhaka ',
]);
/ * Tisknout zprávu * /
ozvěna "

Jsou vloženy tři záznamy klientů

);

Po spuštění vývojového serveru Laravel spusťte následující adresu URL v libovolném prohlížeči a vložte data do klienty stůl.

http: // localhost: 8000 / vložka

Po vložení dat se v prohlížeči zobrazí následující zpráva. Obsah tabulky můžete zkontrolovat otevřením z phpMyAdmin.

Načíst data z tabulky pomocí nástroje Query Builder

Pomocí nástroje pro vytváření dotazů můžete provádět různé typy dotazů Select. Čtyři typy záznamů se načítají pomocí nástroje pro vytváření dotazů v následující funkci směrování. Soubor pohledu s názvem klienty.čepel.php zde se používá k zobrazení dat načtených z tabulky a kód pohledu je uveden později.

Route :: get ('show', function ()
/ * Načíst všechny záznamy z tabulky klientů * /
$ clientList1 = DB :: table ('clients') -> get ();
/ * Načíst první záznam tabulky klientů * /
$ clientList2 = DB :: table ('clients') -> first ();
/ * Načíst třetí záznam tabulky klientů * /
$ clientList3 = DB :: table ('clients') -> find (3);
/ * Načíst jméno klienta na základě e-mailu z tabulky klientů * /
$ clientList4 = DB :: table ('clients') -> where ('email', '[email protected]') -> value ('name');
/ * Vraťte hodnoty čtyř proměnných do souboru zobrazení, aby se zobrazila data
Citováno z tabulky * /
zpětný pohled ('clients', ['clientList1' => $ clientList1, 'clientList2' => $ clientList2,
'clientList3' => $ clientList3, 'clientList4' => $ clientList4]);
);
klienty.čepel.php

Seznam všech klientů



@if (@isset ($ clientList1))






@ foreach ($ clientList1 jako $ client1)





@endforeach
ID klientanázevAdresaE-mailem
$ client1-> id$ client1-> name$ client1-> adresa$ client1-> email

@endif

@if (@isset ($ clientList2-> jméno))

Jméno prvního klienta je $ clientList2-> name


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

E-mail třetího klienta je $ clientList3-> email


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

Jméno klienta na základě e-mailu je $ clientList4


@endif

Po spuštění vývojového serveru Laravel spusťte následující adresu URL v libovolném prohlížeči a přečtěte si data z klienty stůl.

http: // localhost: 8000 / show

Po provedení adresy URL se v prohlížeči zobrazí následující výstup. Obsah $ clientList1 proměnná je zobrazena ve formě tabulky a výstupu $ clientList2, $ clientList3 a $ clientList4 jsou zobrazeny v řádku.

Aktualizujte data pomocí nástroje Tvůrce dotazů

Pomocí nástroje pro tvorbu dotazů můžete aktualizovat jedno nebo více polí na základě jedné nebo více podmínek. Podle následující funkce trasy je hodnota název pole bude aktualizováno na základě hodnoty pole e-mailem pole. Dále obsah všech záznamů v klienty tabulka bude načtena a odeslána do souboru zobrazení pro kontrolu aktualizovaného obsahu tabulky.

Route :: get ('update', function ()
DB :: table ('clients') -> where ('id', 1) -> update (['name' => 'Mohammed Ali']);
ozvěna "
Jméno prvního klienta je aktualizováno
";
$ clientList1 = DB :: table ('clients') -> get ();
zpětný pohled ('clients', ['clientList1' => $ clientList1]);
);

Po spuštění vývojového serveru Laravel spusťte následující adresu URL v libovolném prohlížeči a aktualizujte data klienty stůl.

http: // localhost: 8000 / aktualizace

Po provedení adresy URL se v prohlížeči zobrazí následující výstup. Obsah $ clientList1 proměnná je zobrazena ve formě tabulky. Zde je hodnota název pole je aktualizováno o novou hodnotu.

Odstraňte data pomocí nástroje Query Builder

Všechny záznamy nebo konkrétní záznam lze odstranit pomocí nástroje pro vytváření dotazů. Následující funkce trasy vymaže třetí záznam v souboru klienty tabulka, po odstranění načíst všechny záznamy a vrátit hodnoty do souboru zobrazení.

Route :: get ('delete', function ()
DB :: table ('clients') -> where ('id', '=', 3) -> delete ();
ozvěna "
Třetí záznam je odstraněn
";
$ clientList1 = DB :: table ('clients') -> get ();
zpětný pohled ('clients', ['clientList1' => $ clientList1]);
);

Po spuštění vývojového serveru Laravel spusťte následující adresu URL v libovolném prohlížeči a odstraňte záznam z klienty stůl.

http: // localhost: 8000 / smazat

Po provedení adresy URL se v prohlížeči zobrazí následující výstup. Obsah $ clientList1 proměnná je zobrazena ve formě tabulky. Zde je třetí záznam odstraněn z tabulky.

Výukový program pro video

Závěr

Základní použití nástroje pro tvorbu dotazů jsou uvedena v tomto kurzu, který pomáhá novým vývojářům Laravelu lépe porozumět metodám provádění databázových dotazů v aplikaci Laravel.

Hry Výukový program OpenTTD
Výukový program OpenTTD
OpenTTD je jednou z nejpopulárnějších her pro obchodní simulaci. V této hře musíte vytvořit skvělé dopravní podnikání. Začnete však na začátku kolem r...
Hry SuperTuxKart pro Linux
SuperTuxKart pro Linux
SuperTuxKart je skvělý titul navržený tak, aby vám ve vašem systému Linux přinesl zážitek Mario Kart zdarma. Je to docela náročné a zábavné hrát, je n...
Hry Výukový program Battle for Wesnoth
Výukový program Battle for Wesnoth
The Battle for Wesnoth je jednou z nejpopulárnějších strategických her s otevřeným zdrojovým kódem, které si v tuto chvíli můžete zahrát. Tato hra se ...