Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Návrh Databází Štěpán Šípal. Přehled témat hodiny Dokonalé E-R diagramy Multiplicita v E-R diagramech Atomicita atributů Vícehodnotové atributy Normalizace.

Podobné prezentace


Prezentace na téma: "Návrh Databází Štěpán Šípal. Přehled témat hodiny Dokonalé E-R diagramy Multiplicita v E-R diagramech Atomicita atributů Vícehodnotové atributy Normalizace."— Transkript prezentace:

1 Návrh Databází Štěpán Šípal

2 Přehled témat hodiny Dokonalé E-R diagramy Multiplicita v E-R diagramech Atomicita atributů Vícehodnotové atributy Normalizace Design databáze v DBDesigner 4

3 Dokonalé ER diagramy ER diagram je základem pro další návrh databáze, zobrazuje skutečný stav věcí. Entita – objekt, abstraktní, nikoliv specifický  Entitou je pes, jejím výskytem je „Haryk“.  Všechny výskyty entit mají obdobné atributy, nikoliv však jejich hodnoty!

4 ER diagramy II. Atribut entity je její vlastností, například „jméno“. Jednotlivé hodnoty atributů („Haryk“) nás při modelování nezajímají. Atributům můžeme určovat takzvané domény – slovně popíšete, jakých hodnot může u jednotlivých výskytů entity nabývat.

5 Relace v ER diagramech Relace označují určitý vztah mezi jednotlivými entitami. Musí být popsány a mohou mít vlastní atributy (relace mezi zákazníkem a zbožím bude „zakoupil“ s atributy kdy a za kolik). ZaměstnanecPobočka Pracuje v

6 Relace v ER diagramech NovinyAutomobil Mají reklamu na Atributy: odKdy Cena

7 Multiplicita 1:1 – jednomu výskytu entity A náleží vždy jeden výskyt entity B (pobočka a její vedoucí manažer). 1:n – jednomu výskytu entity A náleží více výskytů B (pobočka a zaměstnanci). M:n – Jednomu výskytu A náleží více B a jednomu B více A (noviny a propagovaná auta).

8 Problémy s ER - pasti Pokud od jedné entity existuje více vazeb s multiplicitou 1:n. FirmaPobočkaZaměstnanec n zam. 11 má n Takovýto zápis je teoreticky správně, ale logicky nám neposkytuje informace o tom, v jaké pobočce zaměstnanec pracuje – musíme jej tedy předělat.

9 Vyřešení pasti Přetvoříme tedy tuto past na „vláček“, kde se budou entity vázat jasněji: FirmaPobočkaZaměstnanec n zam. 1n má 1

10 Atomicita atributů Pokud jednotlivé atributy je možné dále rozložit, jsou to atributy tzv. složené  Například adresa – rozložitelné na ulici, město, PSČ, … Atributy které nelze dále rozkládat nazýváme atomickými. Rozhodnutí zda rozložit záleží na budoucím využití DB – obecně je lepší vždy mít atomické hodnoty.

11 Vícehodnotové atributy Pokud nějaký atributy může mít více hodnot v jeden okamžik – například entita firmy může mít najednou tři telefonní čísla. Je lépe takový atribut odpojit a vytvořit jej jako novou entitu ve vztahu 1:n. Vytvoříme novou entitu telefonní čísla.

12 Normalizace

13 Co je normalizace Normalizace je činnost, při které se snažíme vytvořit tabulky s minimálním nutným počtem atributů s jasným vztahem a s minimální redundancí (opakováním) dat. Normalizace zabraňuje možných chybám při práci s DB.

14 Redundance dat a problémy změn idZaměstjménopoziceplatpobočka Z002Romanmanager20000B002 Z003Paveluklízeč15000B002 Z005Michalmanager20000B003 idZaměstjménopoziceplatidPobpAdresa Z002Romanmanager20000B002Tupolevova 478, … Z003Paveluklízeč15000B002Vratimovská 456, … Z005Michalmanager20000B003Fryčovická 555, … idPobpAdresa B002Tupolevova 478, … B002Vratimovská 456, … B003Fryčovická 555, … Zaměstnanci Pobočky ZaměstnanciPobočky

15 Problémy při vkládání Při vkládání dat  Do špatně navržené tabulky musíme zbytečně vkládat informace navíc (při vložení zaměstnance také adresu pobočky).  Pokud chceme vložit novou pobočku, která zatím nemá zaměstnance, musíme do atributů zaměstnance vložit samé „null“.  Tabulka obsahuje zbytečně redundantní data.

16 Problémy při odstraňování Pokud chceme odstranit posledního zaměstnance určité pobočky z tabulky ZaměstnanciPobočky, údaje o této pobočce budou také smazány.

17 Problémy při změnách Pokud chceme změnit adresu určité pobočky v tabulce ZaměstnanciPobočky, musíme změnit všechny záznamy, ve kterých se tato pobočka vyskytuje. Může se snadno stát, že přidáme zaměstnance k pobočce a přiřadíme ji špatnou adresu.

18 První normální forma Zajištění, aby v každé „buňce“ tabulky s daty byla pouze jedinečná hodnota. Zjistíme chyby v tabulkách typu atributu „telefonní čísla“ s X možnými hodnotami. Pro tyto atributy se vytvoří nové tabulky.

19 První normální forma II. IdZaměstnancezJmenozTelefon Z0001Robert , Z0002Pavel , Z0003Štěpán , IdZaměstnancezJmeno Z0001Robert Z0002Pavel Z0003Štěpán FKIdZaměstnancetelefon Z Z Z Z Z Z

20 Druhá normální forma Zjistíme, zda jsou všechny atributy závislé na primárním klíči. Pokud nejsou, vytvoříme pro ně nové tabulky a rozumně je propojíme.

21 Druhá normální forma II. IdZaměstnancezJmenoidPobočkyadresaPobočky Z0001RobertB004Tupolevova 456 Z0002PavelB004Tupolevova 456 Z0003ŠtěpánB005Beranových 556 IdZaměstnancezJmenoFKidPobočky Z0001RobertB004 Z0002PavelB004 Z0003ŠtěpánB005 idPobočkyadresaPobočky B004Tupolevova 456 B005Beranových 556

22 Třetí normální forma Zajistíme, aby veškeré atributy byly na primárním klíči závislé přímo. Tabulce nájemních domů je jméno nájemníka závislé na jeho id a teprve jeho id na primárním klíči domu. Takovým atributům vytvoříme samostatnou tabulku.


Stáhnout ppt "Návrh Databází Štěpán Šípal. Přehled témat hodiny Dokonalé E-R diagramy Multiplicita v E-R diagramech Atomicita atributů Vícehodnotové atributy Normalizace."

Podobné prezentace


Reklamy Google