Kapitola1
Potřeba a význam databázových systémů
Souhrn
Student se seznámí s významem databází a databázových systémů v současných informačních systémech. Po prostudování kapitoly čtenář pochopí, jak se databáze vyvíjely a jak jsou v dnešním světě databáze významné.
30 hodin
Máme-li mluvit o databázích či databázových systémech, je třeba si hned na začátku říci, že toto téma je jako celek velmi rozsáhlé. Při činnostech souvisejících s databázemi se dobře uplatní lidé s nejrůznějším zaměřením. Detailní znalost z počítačových sítí a komunikace přijdou vhod při návrhu hardwaru zejména tam, kde se počítá s nasazením dnes již běžných aplikací klient-server. Znalosti z programování se uplatní všude, kde je potřeba používat jazyk SQL. Koncový uživatel nechť uplatní znalosti z OS Windows či Linux, protože se databázoví klienti a servery navrhují pro obě platformy.
Tato skripta představí čtenáři práci s relačními databázemi, které jsou v dnešní době nejpoužívanější, zabývají se návrhem databázových systémů, vlastnostmi relačních databázových systémů, normalizací databáze, a využitím jazyka SQL. V převážné většině textu se budeme zabývat serverem MySQL.
Databáze je kolekce či soubor informací o nějakých objektech a popisuje vztahy mezi těmito objekty. Mohlo by se zdát, že databáze je pouze soubor informací o nějakých objektech, ale bez vztahů mezi objekty bychom nemohli pracovat s více tabulkami v relačních databázích. Rozsáhlejší systémy, které zpracovávají data, se nazývají informační systémy.
Telefonní seznam je jedním příkladem databáze. V telefonním seznamu jsou abecedně seřazení účastníci telefonní sítě. U každého najdete telefonní číslo a adresu, respektive ulici a číslo domu. Každý, kdo ví, jak jdou písmena v abecedě za sebou, bez problémů najde telefonní číslo hledaného účastníka, případně jeho adresu.
Jiný příklad databáze je kartotéka u lékaře (viz obrázek 1). Jednotlivými objekty jsou pacienti, o kterých si lékař udržuje zdravotní dokumentaci. Nás teď nebude zajímat, co je v jednotlivých kartách obsaženo, ale jak jsou tyto karty ve skříni uloženy. Databázi dělá databází způsob organizace dat v ní udržovaných, nikoli obsah těchto dat. Sestra musí bez váhání nalézt kartu každého pacienta. Kritérií pro jejich organizaci bychom našli několik. Vedle samozřejmého abecedního pořádku, například pohlaví (to se dá většinou poznat pohledem) nebo věk (dotazem).
+

Obr. 1. Kartotéka
Takže celá skříň je nejspíše rozdělena na dvě poloviny podle pohlaví a dále do několika částí podle ročníku narození. V jednotlivých částech („šuplatech“) jsou pak karty pacientů řazeny podle příjmení – což v češtině, mimochodem, není úplně bezproblémové. Shrneme-li to, je jasné, že od takové organizace informací (na papíře v kartách) nemůžeme očekávat nic většího, než že sestra bez problému najde kartu kteréhokoliv pacienta. O nějakých statistikách, jako například „Kolik lidí v posledních dvou letech stonalo s chřipkou?“, si můžeme nechat jen zdát.
Pro rozvoj databází byl velice zásadní rozvoj počítačů v polovině 20. století. V průběhu času se totiž ukázalo použití strojového kódu pro databázové stroje jako neefektivní. Bylo tedy zapotřebí začít vyvíjet nějaký vyšší jazyk, který by sloužil pouze pro zpracování dat.
Tento požadavek se naplnil na konci padesátých let. V roce 1959 se uskutečnila konference zástupců organizací, firem, uživatelů, ministerstva obrany USA. Závěrem této konference bylo vytvoření univerzálního databázového jazyku. Na začátku šedesátých let proběhla konference CODASYL. Na této konferenci byl představen jazyk COBOL. Tento jazyk sloužil dlouhé roky pro hromadné zpracování dat.
Na další konferenci CODASYL (konané v roce 1965), byl ustanoven výbor Database Task Group (DBTG). Úkolem tohoto výboru bylo vytvořit koncepci, která by sloužila pro tvorbu databázových systémů. Jako první vznikly síťové systémy řízení báze dat, které byly implementovány na sálové počítače.
Na počátku sedmdesátých let vydala DBTG zprávu o své činnosti. Poprvé světlo světa spatřily pojmy databáze, jazyk pro definici dat a další. V této zprávě byla také popsána architektura síťového SŘBD (Systém řízení báze dat).
V sedmdesátých letech dvacátého století přišly na svět hierarchické databáze. Jako příklad si uveďme IMS (Information Management System).
Zásadní pro relační databáze je rok 1970. V tomto roce zveřejnil svůj článek E. F. Codd, ve kterém se objevují první relační databáze. V tomto modelu je pohlíženo na data jako na tabulky. V polovině sedmdesátých let vzniká dotazovací jazyk SQL. Po cca deseti letech přinesl vývoj tohoto dotazovacího jazyka použitelné systémy, které byly srovnatelné se síťovými a hierarchickými databázovými systémy.
Objektově orientované databázové systémy se objevují na počátku devadesátých let. Struktura těchto systémů vychází z objektově orientovaných programovacích jazyků. Objektově orientované databázové systémy měly nahradit relační databázové systémy. Tento předpoklad se však nenaplnil a vznikly objektově-relační technologie, které jsou kompromisem objektových a relačních databázových systémů.