Základy SQL, 1. díl

Zdroj: SOOM.cz [ISSN 1804-7270]
Autor: Saitraje_
Datum: 7.2.2008
Hodnocení/Hlasovalo: 2.5/2

Teorie, základní poznatky, trochu historie

Úvod do seriálu

V tomhle seriálu článku se seznámíme se SQL a jeho syntaxí. Dále si povíme o jeho možnostech v programování. V dnešním díle si především objasníme základní příkazy a syntaxi, abychom mohli dále pracovat s tímto databázovým jazykem. Základní pravidla jsou tato:

1) Jazyk SQL není citlivý na velikost písmenek, z toho důvodu dáváme příkazům velký písmenka a jménům mala pro lepší čitelnost. (pokud se rozhodnete opačně záleží jen na vás)
2) Hranaté závorky uvádějí nastavitelné elementy, není ale podmínkou, že se v kódu musejí vyskytovat.
3) Tři tečky udávají, že se mohou součásti vícekrát opakovat
4) Elementy kódu rozdělené tímto znakem | uvádějí jistou alternativu
5) Zatím nemusíte tomuhle moc rozumět, dokud nezačneme praxi

Jak sami vidíte, tak se nejedná o nic težkého, pokud máte nějáké pochybnosti, zda-li jste to pochopili, tak čtěte dále a vše vám bude vysvětleno.

WWW, neboli World Wide Web je nejspíše jedna z největších pramenů informací, z které můžeme čerpat vědomosti. Ovšem musíme být připojeni. Musíme mít připojení k internetu a prohlížeč. Pokud toto limitum splňujeme, tak můžeme kouminkovat snad se všemi servery na světě. Ještě častěji nejsou tyto dokumenty statické (xhtml, html), ale naopak dynamické (asp, cgi, php).
Uveďme si příklad. Otevřeme Fonael.net a ihned po otebření se nám načte z databáze seznam článků, ten se teprv zpracuje a zobrazí. Milióny podobných stránek využívá prvě tento systém databáze SQL (Structured Query Language). Nekteří si mylně myslí, že to znamená (Simple Query Language), což by sice byla také pravda, ovšem po pravdě t znamená ten první.
Dřív než se začneme starat, jak se s ním pracuje, tak bychom měli pochopit význam slova databáze. Je to kolekce dat, které jsou tříděny dle obsahu do tabulek, dále sloupců a řádků díky DBMS (DataBase Management System). DBMS je vlastně pouze vrstva software, která je mezi uživatelem a daty sami o sobě. Pokud administrátor uzná za vhodné může DBMS změnit a to takovým způsobem, že si toho uživatel ani nemusí všimnout. A pokud ano, tak pouze pozitivně díky rychlejším dotazům do databáze.
První charakteristika podle které se na první pohle pozná DBMS je právě logický přístup k informacím. Podle DBMS bylo vytvořeno za řadu let již mnoho typů databází. Nejpoužívanější typy jsou následující:
Hierarchické databáze: data jsou uspořádána spolu podle tzv. Stromu
Síťová databáze: je velice podobná předchozí, také je jejím potomkem
Databáze relací: tato databáze je založená na relacích, má sloupce a řádky, je velice přehledná


První dvě databáze se již téměř nepoužívají, ovšem třetí je téměř nejpoužívanější ze všech. Jsou nejpoužívanějšími také díky jejich jednoduchosti a přehlednosti, díky které můžete velice rychle upravovat databáze.
Díky této charakteristice můžou vznikajicí projekty spoléhat na kladné a záporné vlastnosti každé databáze.
Nejpoužívanější databáze byla oprvé uvedena na svět v jednom z nejznámějších článkův všech dob roku 1970. Napsal jej E.F.Codd. Stalo se z tohoto typu databáze téměř nejpoužívanější již v 80. letech. Základní požadavek vždy byl rychlý a přehledný přístup, která tato databáze dodržuje.

Pokud vytvoříme tabulku v této databázi, tak máme k dispozici hned několik možností. Nejprve musíme dát název tabulce. Dále musíme nějak pojmenovat sloupce a do řádků potom ukládat data.
Jedná se o velice lehkou konstrukci. Pokud potřebujeme nějak spojit dvě odlišné tabulky, tak musíme v každeé tabulce nadepsat jeden sloupec primárním klíčem, díky kterému se potom dorozumí, aby věděli jaké data spojovat.

Velice často, potřebujeme nějak rychle hledat v tabulce nebo mít rychlé primární klíče. Pro tento případ velice často programátoři přidávaji do tabulky ještě další slopce, které sice nemají žadnou informační hodnotu, ale přesto tam musejí být kvůli primárnímu klíči. Hodnota přidělená v tomto sloupci musí být vždy jedinečná, aby nedocházelo k chybám.
Dále pokud máme nějaké hodnoty, které jsou pro všechny stejné, tak nezapisujeme celý jméno, ale napříkald zkratku, kterou pak převedeme do normálního textu. Dejme si příklad: Máme tabulku si informacemi o uživatelech. Můžeme do kolonky pohlaví zapisovat Muž či Žena, ale můžeme také zapsat m či z. Pak tento znak pouze převedeme ve skriptu na text, který potřebujeme.
Pokud chceme například mít tabulku z údaji uživatelů a primárním klíčem, bude to vypadat následovně:
Lide(*cislo_cloveka, jmeno, prijmeni, rodne_cislo)
Pokud budeme chtít spojit s touto tabulkou další, kde například budou potomci, tak to bude vypadat následovně:
Potomci(*cislo_cloveka, jmeno, prijmeni, rodne_cislo)
U druhé tabulky samozřejmě údaj cislo_cloveka nesmí být jedinečné, jelikož člověk může mít i více potomků. Pak stačí stáhnout data z provní tabulky. Pokud potřebujeme najít potomka k někomu, tak vyhledáme v druhé tabulce všechny, kdo mají identický údaj u cislo_cloveka, pokud bude vysledek False, pak člověk potomky nemá.
Dále je krásná věc na této databázi fakt, že nám stačí pouhých pět operátorů pro práci s ní, o těch ale později. Pouze bych řekl, které to jsou. Jedná se o operátory REStrICT, PROJECT, TIMES, UNION a MINUS .

Tyto operátory probereme, ale až později. V příštím díle si popovídáme právě o těchto operátorech a mnohé jiné. :-)