41 lines
1.7 KiB
Markdown
41 lines
1.7 KiB
Markdown
|
# Funkční závislost atributů
|
||
|
|
||
|
Příklad
|
||
|
|
||
|
| P | U | M | H | S | Z |
|
||
|
| ---- | ---- | ---- | ---- | ---- | ---- |
|
||
|
| DB1 | Zíma | EP120 | Út 10:15 | S1 | 1 |
|
||
|
| DB1 | Zíma | EP120 | Út 10:15 | S2 | 2 |
|
||
|
| DB1 | Zíma | EP120 | Út 10:15 | S3 | 1 |
|
||
|
| DB1 | Zíma | EP120 | Út 10:15 | S4 | 1 |
|
||
|
| INS | Zíma | UC332 | Út 8:25 | S1 | 3 |
|
||
|
| INS | Zíma | UC332 | Út 8:25 | S265 | 1 |
|
||
|
| M1 | Stehlík | EP120 | Čt 9:20 | S501 | 2 |
|
||
|
| M1 | Stehlík | EP120 | Čt 9:20 | S504 | 3 |
|
||
|
| M1 | Stehlík | EP120 | Čt 9:20 | S32 | 3 |
|
||
|
Pro každý předmět musíme zadat tolik řádků, kolik má předmět studentů.
|
||
|
|
||
|
Přesuneme-li předmět DB1 z EP120 do EP110, musíme hodnotuy změnit u všech zapsaných studentů. Jedna událost v reálném světě vyžaduje hodně změn v uložených datech.
|
||
|
|
||
|
Hledáme rozklad relace na více relací:
|
||
|
- $D_{1} = \{PUMH, PSZ\}$
|
||
|
- $D_{2} = \{PU, HMP, HUM, PSZ, HMS\}$
|
||
|
- $D_{3} = \{PU, HSP, PSZ, PSZ, HMS\}$
|
||
|
- $D_{4} = \{PU, HSP, PSZ, HMP\}$
|
||
|
|
||
|
**Funkční závislost atributů**
|
||
|
- popisuje vztah mezi atributy relace
|
||
|
- **populací relace** $R$ budeme rozumět hodnoty atributů relace v daném čase
|
||
|
- konkrétní naplnění tabulky hodnotami
|
||
|
- $A$ a $B$ jsou podmnožinami relačního schématu $R$. $B$ funkčně závisí na $A$ (značíme $A \to B$), jestliže pro všechny populace $R$ platí pro libovolné n-tice $u$ a $v$ z relace $R$:
|
||
|
- $\Pi_{A}(u) = \Pi_{A}(v) \implies \Pi_{B}(u) = \Pi_{B}(v)$
|
||
|
- ve funkční závislosti $A \to B$ nazýváme množinu atributů $A$ **determinantem**
|
||
|
|
||
|
Příklad
|
||
|
- Přednáška(Předmět, Učitel, Místnost, Hodina, Student, Známka)
|
||
|
- $P \to U$ (jestliže předmět učí jen jeden učitel)
|
||
|
- $HM \to P$
|
||
|
- $HU \to P$
|
||
|
- $PS \to Z$
|
||
|
- $HS \to M$
|