Relační model

Z Wikipedie, otevřené encyklopedie

Relační model je nejrozšířenějším způsobem uložení dat v databázi. Jedná se způsob uložení v logickém smyslu.


V roce 1969 přišel doktor E. F. Codd (A relational data model for large shared data banks) se svou představou o databázi založené na matematickém aparátu relačních množin a predikátové logiky. Databázová relace se od matematické poněkud liší. Má zavedený pomocný aparát nazvaný schéma relace. Schéma relace říká, jaký je název relace, kolik má sloupců a jaké jsou jejich názvy a domény (doména určuje přípustné hodnoty v daném sloupci). V databázích je schématem relace definice struktury tabulky. Ovšem relací není jenom tabulka, ale cokoliv strukturovaného do řádků a sloupců. Což znamená, že relací je i výsledek jakéhokoliv dotazu, a tak s ním můžeme pracovat. Velmi rozšířeným omylem je, že relačni se model jmenuje podle vztahů mezi daty, což není pravda, protože název relační vychází z relací, na kterých je celý model založen.

Relační databázový model sdružuje data do tzv. relací (tabulek), které obsahují n-tice (řádky). Tabulky (relace) tvoří základ relační databáze. Tabulka je struktura záznamů s pevně stanovenými položkami (sloupci - atributy). Každý sloupec má definován jednoznačný název, typ a rozsah, neboli doménu. Záznam se stává n-ticí (řádkem) tabulky. Pokud jsou v různých tabulkách sloupce stejného typu, pak tyto sloupce mohou vytvářet vazby mezi jednotlivými tabulkami. Tabulky se poté naplňují vlastním obsahem - konkrétními daty.

Kolekce více tabulek, jejich funkčních vztahů, indexů a dalších součástí tvoří relační databázi.

Relační model přináší celou řadu výhod, zejména mnohdy přirozenou reprezentaci zpracovávaných dat, možnost snadného definování a zpracování vazeb apod.

Relační model klade velký důraz na zachování integrity dat. Zavádí pojmy referenční integrita, cizí klíč, primární klíč, normální tvar apod.

S relačními databázemi je úzce spojen pojem SQL (Structured Query Language), neboli strukturovaný dotazovací jazyk. Jeho základní model je obecně použitelný pro většinu relačních databází. Od svého vzniku prošel několika revizemi a poskytovatelé databázových produktů jej obohatili o různá lokální rozšíření. Tato rozíření ale nejsou vzájemně kompatibilní.

Externí odkaz: Manualy.net