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

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

Databázové systémy Přednáška č. 4.

Podobné prezentace


Prezentace na téma: "Databázové systémy Přednáška č. 4."— Transkript prezentace:

1 Databázové systémy Přednáška č. 4

2 Normalizace Proces, který postupnou dekompozicí původní relace vede k vytvoření množiny relací, u kterých: Jsou eliminovány určité typy redundance Je zjednodušená kontrola integrity Nedochází k anomáliím při údržbě dat (tzv. aktualizační anomálie – projeví se při aktualizačních operacích)

3 Normalizace Funkční závislost
Je definována mezi dvěma množinami atributů v rámci jedné relace def.: Je dána relace R(A,B), kde A, B mohou být složené atributy. Říkáme, že B je funkčně závislý na A, když pro každou hodnotu A je jednoznačně daná hodnota B (označení A B). B je plně funkčně závislý na A, je-li funkčně závislý na A a není funkčně závislý na žádné podmnožině A.

4 Funkční závislost Př.1: V relaci ČTENÁŘ (č_čt, jméno, adresa) jsou atributy jméno, adresa funkčně závislé na č_čt. č_čt jméno adresa

5 Funkční závislost Př.2: V relaci REZERVACE (ISBN, č_čt, datum_rezervace) je atribut datum_rezervace plně funkčně závislý na primárním klíči {ISBN, č_čt} ISBN č_čt datum_rezervace

6 Normální normy relací 1. normální forma relace
Relace je v 1. NF, když všechny její hodnoty jsou atomické 2. normální forma relace Relace je v 2. NF, když je v 1. NF a každý neklíčový atribut je plně funkčně závislý na primárním klíči 3. normální forma relace Relace je v 3. NF, když je v 2.NF a všechny neklíčové atributy jsou vzájemně nezávislé.

7 Proces normalizace Není-li relace v 2. NF, vytvoříme projekci, abychom eliminovali neúplné funkční závislosti na primárním klíči Není-li relace v 3. NF, tak vytvoříme projekci, abychom odstranili tranzitivní závislosti

8 Proces normalizace Příklad: Je dána relace R(A,B,C,D), A D - není v 2. NF R nahradíme projekcemi: R1(A,B,C) R2(A,D) Příklad: Je dána relace R(A,B,C), B C - není v 3. NF R nahradíme projekcemi: R1(B,C) R2 (A,B)

9 Proces normalizace Relace KREDITY (kód_předmětu, kód_učit, jméno_učit, kód_stud, jméno_stud, známka) – předpokládáme, že každý předmět zkouší pouze jeden učitel - funkční závislosti: kód_předmětu kód_stud kód_učit jméno_učit známka jméno_stud

10 Proces normalizace HODNOCENI (kód_předmětu, kód_stud, známka)
– není v 3.NF, vytvoříme projekce: HODNOCENI (kód_předmětu, kód_stud, známka) UČITEL (kód_učit, jméno_učit) STUDENT (kód_stud, jméno_stud) PŘEDMĚT (kód_předmětu, kód_učit)

11 Proces normalizace - úkol
Relace KINA (kód_filmu, název_filmu, kód_kina, název_kina, č_mng, jméno_mng, náštěvnost) - zakreslete funkční závislosti a proveďte normalizaci


Stáhnout ppt "Databázové systémy Přednáška č. 4."

Podobné prezentace


Reklamy Google