10.05.2026

compunit Support

ČLÁNEK

Struktura tabulek a čtení dat

V úvodní kapitole jsme si SQL představili jako jazyk pro komunikaci s „internetovými skladišti“. Abychom ale v takovém skladišti něco našli, nemůžeme tam data jen tak naházet na hromadu. Musí mít svůj jasný řád. V tomto díle se podíváme na to, jak jsou data organizována a jak si o ně správně říct.


Databáze jako organizovaný pořadač

Představte si celou databázi jako velký kancelářský pořadač. Uvnitř tohoto pořadače jsou jednotlivé listy (tabulky). Každá tabulka má své sloupce, které určují, co o dané věci evidujeme.

Pokud bychom měli tabulku uzivatele, její sloupce by mohly vypadat takto:

  • ID (unikátní číslo uživatele)

  • Jméno

  • Email

  • Datum_registrace

Každý nový uživatel pak představuje jeden řádek v této tabulce.


Než začneme: Jak se k datům dostat?

Aby mohl jazyk PHP s databází manipulovat, musíme nejdříve navázat spojení. K tomu se v moderním webovém vývoji používají čtyři základní klíče:

  1. Hostitel (Server): Nejčastěji localhost.

  2. Uživatelské jméno: Výchozí bývá root.

  3. Heslo: Na lokálních serverech bývá často prázdné.

  4. Název databáze: Jméno konkrétního "skladu", který jsme si vytvořili.


Příkaz SELECT: „Databáze, ukaž mi...“

Nejčastější činností, kterou s daty děláme, je jejich čtení. K tomu slouží příkaz SELECT. Je to v podstatě dotaz, kterým říkáme systému, jaké informace nás zrovna zajímají.

Základní syntaxe vypadá takto:

SELECT jmeno, email FROM uzivatele;

Tímto příkazem říkáme: „Vyber sloupce jmeno a email z tabulky uzivatele.“ Pokud bychom chtěli vypsat úplně všechny sloupce, které v tabulce existují, použijeme hvězdičku:

SELECT * FROM uzivatele;


Filtrování dat pomocí WHERE

V praxi málokdy potřebujeme vypsat úplně všechny uživatele najednou. Často hledáme někoho konkrétního – například při přihlašování. K tomu slouží klíčové slovo WHERE, které funguje jako filtr.

SELECT * FROM uzivatele WHERE jmeno = 'Admin';

Tento dotaz vybere pouze ty řádky, kde se ve sloupci jmeno nachází přesně hodnota 'Admin'. Podmínky můžeme i kombinovat, například hledat uživatele, kteří jsou z Prahy A zároveň je jim více než 18 let.


Bezpečnost na prvním místě

Již v úvodu jsme zmínili hackery. Při propojování PHP a SQL je kriticky důležité data ze vstupních formulářů řádně ošetřit. Pokud bychom totiž proměnné z formuláře vložili přímo do SQL dotazu bez kontroly, vystavujeme se riziku útoku zvaného SQL Injection, kdy útočník může pomocí speciálně napsaného textu smazat celou naši databázi.

V příští kapitole se podíváme na to, jak data do databáze poprvé vložit pomocí příkazu INSERT a jak se u toho efektivně bránit zmíněným útokům.

Cookies
V souladu s vaším potvrzením používáme cookies soubory, abychom Vám mohli nabídnout co nejvhodnější obsah.

Zpět nahoru