Skip to content

Funkční závislost v databázi

26 de Červen de 2021
CA13920 56a227c03df78cf77272a945 fa23bc6a02154eb99c20ff55168524ee

Funkční závislost v databázi vynucuje sadu omezení mezi atributy. K tomu dochází, když jeden atribut ve vztahu jednoznačně určuje jiný atribut. To lze psát A -> B což znamená „B je funkčně závislý na A.“ Toto se také nazývá závislost databáze. V tomto vztahu A určuje hodnotu B, zatímco B závisí na A.

Proč je při návrhu databáze důležitá funkční závislost

Funkční závislost pomáhá zajistit platnost dat. Zvažte tabulku Zaměstnanci, která uvádí charakteristiky, včetně čísla sociálního zabezpečení (SSN), jména, data narození, adresy atd. Atribut SSN určí hodnotu jména, data narození, adresy a možná i dalších hodnot, protože číslo sociálního zabezpečení je jedinečné, zatímco jméno, datum narození nebo adresa nemusí být. Můžeme to napsat takto: SSN -> jméno, datum narození, adresa

type = „code“> Proto jméno, datum narození a adresa jsou funkčně závislé na SSN. Zpětné tvrzení (jméno -> SSN) však není pravdivé, protože více než jeden zaměstnanec může mít stejné jméno, ale nikdy nebude mít stejné SSN. Jinými slovy, pokud známe hodnotu atributu SSN, můžeme najít hodnotu jména, data narození a adresy. Pokud ale místo toho známe hodnotu pouze atributu name, nemůžeme identifikovat SSN. Levá strana funkční závislosti může obsahovat více než jeden atribut. Řekněme, že máme firmu s více místy. Mohli bychom mít tabulku Zaměstnanec s atributy zaměstnanec, titul, oddělení, umístění a manažer. Zaměstnanec určí místo, kde pracuje, takže existuje závislost: zaměstnanec -> umístění

type = „code“> Místo však může mít více než jednoho správce, takže správce a zaměstnanec společně určují správce: zaměstnanec, oddělení -> manažer

zadejte = „kód“>

Funkční závislost a normalizace

Funkční závislost přispívá k takzvané normalizaci databáze, která zajišťuje integritu dat a snižuje nadbytečnost dat. Bez normalizace neexistuje záruka, že data v databázi jsou přesná a spolehlivá.