Modelování databáze

Můžete si stáhnout prezentaci k tomuto cvičení.

Dřív než se vůbec do tvorby databáze pustíte, je rozumné rozmyslet si, jaká data v ní budou uložena, jak se budou dělit do tabulek a jakého budou typu. Aby bylo možné databázi přehledně popsat, vznikla řada notací, kterými se dá znázornit (je třeba zdůraznit, že řeč je nyní o relačních databázích a notace jsou navrženy pro ně, mohou existovat i jiné druhy databází ale v rámci tohoto předmětu se s nimi nesetkáte). Jejich přehled máte na obrázku níže. Jak je vidět na obrázku, notací je několik, ale všechny umožňují zachytit některé základní objekty - entity, atributy a charakter relace mezi nimi.

Různé notace pro popis relační databáze

Během návrhu je nejprve nutné identifikovat

Úkol

Přečtěte si pozorně zadání a navrhněte ERA model pro jednotlivé databáze. Snažte se vhodně navrhnout i číselníky, pokud je to třeba. Obvykle existuje několik možností jak schéma navrhnout, je tedy třeba abyste dokázali vaše řešení zdůvodnit.

  1. Tělovýchovná jednota pořádá v průběhu týdne několik pravidelných kurzů. Má několik místností kde kurzy mohou probíhat. Kurz vede vždy jeden z několika registrovaných cvičitelů, někteří cvičitelé vedou i několik kurzů. Každý kurz má určenou kapacitu a až do jejího vyčerpání se do něj mohou hlásit lidé. Jeden člověk může chodit do libovolného počtu kurzů.
  2. V citační databázi jsou údaje o publikacích. Publikace může být buď kniha nebo článek v periodiku, každá publikace má minimálně jednoho autora. Ke každé publikaci může být přiřazena množina klíčových slov. Periodikum má jednotlivá čísla, v každém čísle může být několik publikací.
  3. V říční kilometráži jsou ke každé řece uloženy údaje o objektech, které se na ní vyskytují - jezy, přehrady, zdymadla, mosty, brody, přívozy, přístaviště. V databázi může býýt několik řek.
  4. Firma si vede inventář majetku - nábytku, počítačů, projektorů a knih. Každý kus majetku se nachází v některé z místností firmy a každý je přidělen určitému zaměstnanci. V každé místnosti je určen jeden zaměstnanec jako její správce.
  5. Databáze obsahuje údaje o projektech. V práci na projektu je zaměstnáno několik lidí. Lidé jsou rozděleni do týmů, v každém týmu je určen jeden vedoucí. Projekt je rozdělen na řadu úkolů a na zpracování každého úkolu je přidělen nejméně jeden člověk nebo tým, vždy jeden človek je určen jako vedoucí úkolu zodpovědný za jeho schválení. Každý úkol se může nacházet v několika stavech - nezahájený, rozpracovaný, dokončený, schválený.