Najdôležitejším krokom k vytvoreniu správne
fungujúcej databázy je vytvorenie tabuliek. Potrebné je premyslieť si
štruktúru tabuliek a charakter údajov v nich. Neskoršia zmena tabuliek,
keď je databáza už naplnená, je zdĺhavá a môže spôsobiť omyly, ktorých
oprava je náročná alebo až v niektorých prípadoch nemožná. Správne
navrhnuté tabuľky majú spĺňať nasledujúce kritéria.Kritériá pre
tvorbu tabuliek
-
Každé pole tabuľky
má obsahovať jedinečný typ informácie, polia nemajú obsahovať
opakujúce sa informácie, aby databáza neobsahovala nadbytočné údaje.
Nasledujúci príklad znázorňuje ako sa rozdelením tabuľky odstránia
nadbytočné informácie v poli
mesto v prvej tabuľke.
Prvá tabuľka zbytočne uchováva v niekoľkých riadkoch rovnaký údaj
(názov mesta a príslušné PSČ).
-
Každý
záznam tabuľky musí byť jednoznačne identifikovateľný, to znamená, že
niektoré pole tabuľky musí obsahovať hodnoty, ktoré sa neopakujú.
Napríklad v tabuľke Mesto
to je pole IDmesto.
Toto pole sa nazýva primárny kľúč tabuľky.
-
Polia tabuľky musia obsahovať informácie o jednom
predmete.
Postup pri vytváraní databáz
Budeme navrhovať databázu pre fonotéku - databázu CD nosičov.
-
Najprv definujeme hlavné úlohy,
ktoré bude fonotéka vykonávať. Sú to:
udržiavanie informácií o CD |
informácie o priateľoch, ktorí si CD požičiavajú |
informácie o požičiavaní CD |
-
Určíme údaje, ktoré sú potrebné pre vykonávanie jednotlivých úloh.
Údaje zoskupíme podľa predmetov, ku ktorým sa budú vzťahovať
jednotlivé tabuľky databázy.
CD |
|
Priatelia |
|
Pôžička |
číslo CD |
|
číslo priateľa |
|
číslo pôžičky |
názov CD |
|
meno |
|
číslo CD |
Interpret |
|
priezvisko |
|
číslo priateľa |
žáner |
|
ulica |
|
požičané dátum |
|
|
mesto |
|
vrátené dátum |
|
|
email |
|
|
- Tabuľky môžu obsahovať nadbytočné informácie.
Preto v ďalšom kroku odstránime nadbytočné informácie
z tabuliek. Napríklad niektoré CD majú rovnaký žáner alebo rovnakého
interpreta. Je preto potrebné rozdeliť tabuľku CD. V nej miesto celého
názvu žánru bude vystupovať len kód žánru, ktorý korešponduje s kódom
v tabuľke žáner.
Výsledný tvar tabuliek preto bude:
CD |
|
Interpreti |
|
Žáner |
|
Priatelia |
|
Pôžička |
číslo CD |
|
číslo interpreta |
|
kód žánru |
|
číslo priateľa |
|
číslo pôžičky |
názov CD |
|
meno interpreta |
|
žáner |
|
meno |
|
číslo CD |
číslo Interpreta |
|
|
|
|
|
priezvisko |
|
číslo priateľa |
kód žánru |
|
|
|
|
|
ulica |
|
požičané dátum |
|
|
|
|
|
|
mesto |
|
vrátené dátum |
|
|
|
|
|
|
email |
|
|
Úlohy:
- Vyskytujú sa v týchto tabuľkách nadbytočné údaje? Áno. Sú v tabuľke
Priatelia. Rozdeľte tabuľku tak, aby ste odstránili nadbytočnosti.
- Navrhnite databázu Trieda pre triedneho
učiteľa, ktorý potrebuje udržiavať informácie o tom, aké voliteľné
predmety a ktorých vyučujúcich si zvolili žiaci jeho triedy. Žiaci si
volia tri predmety.
- Navrhnite databázu pre vašu školskú miniknižnicu cudzích
jazykov. Musíte udržiavať informácie o jazyku, v ktorom je kniha
napísaná, autorovi, žánri knihy a o študentoch, ktorí si požičiavajú
knihy z knižnice.
- Majiteľ požičovne automobilov vás požiadal, aby ste pre neho
navrhli databázu, v ktorej bude spravovať informácie o autách,
klientoch a požičiavaní áut. Autá sú zaparkované na parkovisku, na
ktorom má každé miesto presné označenie.
- Majiteľ kina si kúpil počítač, aby zefektívnil spôsob objednávok
predaja lístkov. Navrhnite pre neho databázu, ktorá umožní
objednávanie lístkov a predávanie lístkov podľa radov sedadiel.
Predstavenia sa uvádzajú v zodpovedajúci deň a hodinu.
- Navrhnite databázu pre obvodného lekára. Potrebuje si
uchovávať osobné údaje o pacientoch a údaje o liekoch, ktoré im
predpisuje.
- Navrhnite databázu pre inventár v kabinete
fyziky vo vašej škole.
|