Co je SQL? Kompletní tutoriál k formulářům a základům
⚡ Chytré shrnutí
Co je SQL? Strukturovaný dotazovací jazyk (Structured Query Language) je standardní jazyk pro práci s relačními databázemi. Umožňuje vytvářet schémata, dotazovat záznamy, aktualizovat řádky, spravovat oprávnění a propojovat moderní aplikace s enginy, jako jsou... PostgreSQL, MySQLa SQL Server.

Co je SQL?
SQL je standardní jazyk pro práci s relačními databázemi. Používá se k vkládání, vyhledávání, aktualizaci a mazání záznamů a také k optimalizaci a údržbě databází. SQL je standard ANSI a ISO, takže stejná základní syntaxe běží napříč enginy, jako například PostgreSQL, MySQL, Oraclea SQL Server.
Plný formulář SQL
SQL je zkratka pro strukturovaný dotazovací jazyk, vyslovuje se „SQL“ nebo „See-Quel“. IBM vyvinul jej v 70. letech 20. století a relační databáze, jako například MySQL, Oracle Database, Microsoft SQL Server, PostgreSQL, a SAP Sybase používá jako základ ANSI SQL.
Jak používat SQL
SQL příkaz vydáte napsáním příkazu, který pojmenovává operaci, cílovou tabulku a všechny podmínky filtru. Dotaz SELECT vracející členy starší než 30 vypadá takto:
SELECT * FROM Members WHERE Age > 30;
Syntaxe napříč databázemi je do značné míry podobná, protože každý hlavní engine implementuje standard ANSI. Některé produkty RDBMS přidávají proprietární dialekty, například T-SQL v SQL Serveru a PL/SQL v... Oracle.
klikněte zde pokud video není přístupné
K čemu se používá SQL?
Zde jsou důležité důvody pro použití SQL:
- Pomáhá uživatelům přistupovat k datům v systém RDBMS.
- Pomáhá vám to popsat data.
- Umožňuje vám definovat data v databázi a manipulovat s těmito konkrétními daty.
- Pomocí SQL můžete vytvářet a rušit databáze a tabulky.
- SQL umožňuje používat funkce v databázi, vytvářet zobrazení a psát uložené procedury.
- Můžete nastavit oprávnění pro tabulky, procedury a pohledy.
- SQL podporuje analytické úkoly, jako je reporting, business intelligence a předávání dat do kanálů strojového učení.
Stručná historie SQL
Zde jsou důležité orientační body z historie SQL:
- 1970 – Dr. Edgar F. „Ted“ Codd popsal relační model pro databáze.
- 1974 – Strukturovaný dotazovací jazyk se objevil na IBM Výzkum.
- 1978 - IBM vydaný System/R.
- 1986 – ANSI standardizoval SQL jako SQL-86.
- 1989 – Byla publikována první komerční verze standardu SQL.
- 1999 – SQL:1999 přidal triggery a objektově orientované funkce.
- SQL:2003 – Funkce okna a prvky XML.
- SQL:2006 – Podpora dotazovacího jazyka XML.
- SQL:2011 – Podpora temporálních databází.
- SQL:2016 – JSON, rozpoznávání řádkových vzorů, polymorfní tabulkové funkce.
- SQL:2023 – Dotazy na grafy vlastností (SQL/PGQ) a přesnější zpracování JSON.
Typy SQL příkazů
Zde je pět typů široce používaných příkazů SQL:
- Data Definition Language (DDL)
- Data Manipulation Language (DML)
- Data Control Language (DCL)
- Jazyk řízení transakcí (TCL)
- Data Query Language (DQL)
Seznam SQL příkazů
Zde je seznam některých nejčastěji používaných SQL příkazy:
- CREATE – definuje strukturu nebo schéma databáze.
- INSERT – vkládá data do řádků tabulky.
- UPDATE – aktualizuje existující data v databázi.
- DELETE – odstraní jeden nebo více řádků z tabulky.
- SELECT – vybere atributy, které splňují podmínku popsanou klauzulí WHERE.
- DROP – odstraňuje tabulky a databáze.
- SPOJIT – provede INSERT nebo UPDATE v jednom příkazu na základě podmínky shody.
Proces SQL
Když spustíte příkaz SQL, databázový engine jej analyzuje, vybere plán provedení a spustí ho na úložné vrstvě.
Důležité komponenty v tomto procesu jsou:
- SQL Query Engine
- Optimalizační engine
- Dispečer dotazů
- Klasický Query Engine
Klasický dotazovací engine zpracovává dotazy jiné než SQL, zatímco dotazovací engine SQL zpracovává strukturovanou pracovní zátěž.

SQL standardy
SQL zahrnuje vytváření, mazání, načítání a úpravu řádků databáze a řízení přístupu. Je to standard ANSI (American National Standards Institute) a ISO a aktuální vydání je ISO / IEC 9075: 2023, běžně nazývaný SQL:2023. Standard je rozdělen do několika částí:
| Část | Description |
|---|---|
| Část 1 – SQL/Framework | Nabízí logické koncepty, které jsou základem všech ostatních částí. |
| Část 2 – SQL/Foundation | Definuje centrální syntaxi a sémantiku jazyka SQL. |
| Část 3 – SQL/CLI | Určuje rozhraní na úrovni volání používané ovladači ODBC a podobnými ovladači. |
| Část 4 – Trvale uložené moduly | Uložené rutiny, externí rutiny a rozšíření procedurálního jazyka pro SQL. |
| Část 9 – Správa externích dat | Přidává syntaxi a definice, které umožňují SQL přístup k datovým zdrojům mimo SQL, jako jsou soubory. |
| Část 10 – Vazby objektového jazyka | Určuje syntaxi a sémantiku vkládání SQL do Java. |
| Část 11 – SQL/Schéma | Informační a definiční schémata. |
| Část 13 – SQL/JRT | SQL rutiny a typy používající Java programovací jazyk. |
| Část 14 – SQL/XML | SQL a XML, včetně integrace XMLTYPE a XQuery. |
| Část 15 – SQL/MDA | Poskytuje podporu SQL pro vícerozměrná pole. |
| Část 16 – SQL/PGQ | Přidáno v SQL:2023 pro definování dotazů grafů vlastností nad relačními tabulkami. |
Moderní SQL enginy
Každý engine implementuje většinu jádra ANSI a přidává svá vlastní rozšíření:
- PostgreSQL 17: Open source s přísným dodržováním standardů a bohatou podporou JSON.
- MySQL 8: Oblíbené u webových aplikací; podporuje funkce okna, výzvy k vyzvání k vyzvání a režim úložiště dokumentů.
- Microsoft SQL Server 2022: Podnikový engine s dotazovací inteligencí a Azure Zrcadlení synapsí.
- Oracle Database 23ai: Kombinuje SQL s vektorovým vyhledáváním a zobrazením duality JSON s relačními parametry.
- SQLite: Lehký souborový engine integrovaný do mobilních aplikací a prohlížečů.
Cloudové sklady, jako např. Amazon červený posuv, Google BigQuery a Snowflake také zpřístupňují dialekty ANSI SQL, což jazyk činí přenositelným z notebooku pro analýzy v petabajtovém měřítku.
Prvky jazyka SQL
Zde jsou důležité prvky jazyka SQL:
- Klíčová slova: Rezervovaná slova jako SELECT, FROM nebo WHERE, která tvoří každý příkaz.
- Identifikátory: Názvy databázových objektů, jako jsou ID uživatelů, tabulky a sloupce.
- Řetězce: Literální řetězce nebo výrazy s datovými typy VARCHAR nebo CHAR.
- Výrazy: Tvořeno z konstant, operátorů SQL, názvů sloupců a poddotazů.
- Podmínky vyhledávání: Filtrování řádků nebo řízení toku příkazů, jako například IF.
- Zvláštní hodnoty: Hodnoty jako CURRENT_TIMESTAMP použité ve výrazech a výchozích hodnotách sloupců.
- Proměnné: Většina enginů podporuje v uložených procedurách lokální, globální a proměnné na úrovni připojení.
- Komentáře: Jednořádkové (–) a blokové (/* */) komentáře dokumentují SQL, ale nejsou spuštěny.
- Hodnota NULL: Hodnota NULL označuje hodnotu, která je neznámá, chybí nebo se nedá použít.
Co je to databáze v SQL?
A databáze je kolekce tabulek, které ukládají strukturovaná data. Tabulka obsahuje řádky (záznamy nebo n-tice) a sloupce (atributy).
Každý sloupec ukládá specifický typ informací, například jména, data, částky v dolarech nebo čísla. Vztahy mezi tabulkami jsou vynucovány pomocí primárních a cizích klíčů, což dělá databázi „relační“.
Co je NoSQL?
NoSQL je kategorií Systémy pro správu databází jehož hlavním rysem je nedodržování relačních konceptů. NoSQL znamená „Nejen SQL“. Kategorie se rozrostla s internetovými giganty, jako například Google, Facebook a Amazon, kteří pracují s gigantickými objemy dat.
Když relační databáze zpracovávají obrovské objemy, doba odezvy se může zpomalit. Můžete „škálovat“ upgradem hardwaru nebo „škálovat na více“ rozdělením zátěže mezi více hostitelů.
NoSQL databáze jsou nerelační obchody určené pro webové aplikace. Ne vždy používají SQL nebo vynucují striktní schémata a ACID (Atomvlastnosti (např. izolace, konzistence, izolace, trvanlivost) nejsou vždy zaručeny, ačkoli moderní systémy, jako například MongoDB a Cassandra nyní nabízejí laditelné transakční režimy.
Proč má smysl učit se SQL po NoSQL
Vzhledem k tomu, že NoSQL se škáluje lépe než relační modely, možná vás zajímá... proč by se někdo stále učil SQLNoSQL databáze jsou specializované a nejvhodnější pro obrovské nestrukturované datové sady, ale většina obchodních aplikací se stále spoléhá na relační databáze a jejich nástroje.
Relační databáze si oproti NoSQL zachovávají následující výhody:
- Zralý model ukládání a správy dat, klíčový pro podnikové uživatele.
- Podpora zobrazení, která uživatelům umožňuje vidět pouze autorizovaná data.
- Podpora uložených procedur, které vkládají obchodní logiku do databáze.
- Silnější bezpečnostní modely, řízení přístupu na základě rolí a funkce auditu.
- SQL je lingua franca pro business intelligence, dashboardy a nástroje umělé inteligence, které vyžadují strukturovaný vstup.
Poptávka po profesionálech, kteří umí pracovat s relačními databázemi, stále roste. rostoucí, takže se stále vyplatí naučit se základy SQL.
SQL a AI: Nástroje pro převod textu do SQL
SQL je nyní cílovým jazykem pro asistenty s umělou inteligencí. Text-to-SQL Nástroje překládají otázky v jednoduché angličtině, jako například „zobrazit 10 nejlepších zákazníků podle tržeb za poslední čtvrtletí“, do spustitelného SQL kódu. Mezi oblíbené možnosti patří GitHub Copilot, Vanna AI, Microsoft Kopilot dovnitř Azure SQL a Oracle Vyberte AI. Před spuštěním na produkčních datech vždy zkontrolujte vygenerovaný SQL kód z hlediska jeho správnosti, zabezpečení a indexování.
Nejlepší knihy pro výuku SQL
Zde jsou některé z nejlepších knih o SQL:
- Výukový program SQL pro začátečníky:
Toto SQL kurz pro začátečníky PDF se zabývá základními koncepty databází, příkazy MS-SQL a pokročilými tématy, jako jsou například SQL join.
- SQL za 10 minut: Barevné příklady kódu ukazují strukturu příkazů SQL a také zkratky a hotová řešení. KUP NYNÍ
- SQL kuchařka: Techniky, jako je procházení řetězce pomocí SQL pro analýzu znaků nebo oddělených prvků. KUP NYNÍ
- SQL: The Complete Reference: Zahrnuje funkce okna, otáčení řádků do sloupců a reverzní otáčení. KUP NYNÍ
- Kapesní průvodce SQL: Učí SQL funkce, syntaxi regulárních výrazů a převod typů. KUP NYNÍ
Pro více knih o SQL – Klikněte zde
