[ DATABASE_SQL ]

Kliknutím se vrátíš do zpět.

Relační databáze a SQL

SQL (Structured Query Language) je standardizovaný jazyk pro správu dat v relačních databázích. Data jsou zde organizována do tabulek propojených relacemi. Jako bug hunter používáš SQL k tomu, abys přinutil databázi vydat data, ke kterým nemáš mít přístup.

Základní pojmy:

  • Tabulka (Table): Skládá se z řádků (záznamů) a sloupců (atributů).
  • Primární klíč (PK): Unikátní ID každého řádku (např. user_id).
  • Cizí klíč (FK): Odkaz na PK v jiné tabulce, který vytváří vztah mezi daty.
  • RDBMS: Systémy jako PostgreSQL, MySQL nebo SQLite, které tyto databáze spravují.

Rozdělení SQL příkazů

SQL se dělí do skupin podle toho, zda definujeme strukturu nebo manipulujeme s obsahem:

DDL (Definition)

Definuje "krabice" na data. Příkazy: CREATE, ALTER, DROP.

DML (Manipulation)

Práce s daty (CRUD). To nejdůležitější: SELECT, INSERT, UPDATE, DELETE.

Klíčové příkazy v praxi

Operace SQL Příkaz Vysvětlení
VýběrSELECT * FROM Uzivatele;Vybere všechna data z tabulky.
FiltrováníSELECT jmeno FROM Uzivatele WHERE vek > 18;Filtruje uživatele podle podmínky.
ŘazeníSELECT * FROM Produkty ORDER BY cena DESC;Seřadí data od nejvyšší ceny.
AktualizaceUPDATE Uzivatele SET heslo = '123' WHERE id = 5;Změní data u konkrétního záznamu.

Pokročilé mechanismy

Síla SQL spočívá v propojování tabulek a výpočtech nad daty: