Co jsou závislé na databázi?

Závislost na databázích je téma, které často zaměňuje studenty i profesionály v databázi. Naštěstí nejsou tak komplikované a lze je nejlépe ilustrovat pomocí několika příkladů. V tomto článku zkoumáme společné typy závislostí na databázi.

Databázové závislosti / funkční závislost

Závislost se vyskytuje v databázi, pokud informace uložené ve stejné tabulce databáze jednoznačně určují další informace uložené ve stejné tabulce. Můžete to také popsat jako vztah, kdy znalost hodnoty jednoho atributu (nebo souboru atributů) stačí k tomu, abyste v téže tabulce informovali o hodnotě jiného atributu (nebo souboru atributů).

Řekněme, že existuje závislost mezi atributy v tabulce, je stejná jako tvrzení, že mezi těmito atributy existuje funkční závislost. Pokud existuje závislost v databázi tak, že atribut B závisí na atributu A, zapíšete to jako "A -> B".

Například v tabulce s vlastnostmi zaměstnanců včetně SSN a jména lze říci, že název je závislý na SSN (nebo SSN -> name), protože jméno zaměstnance může být jednoznačně určeno z jejich SSN. Reverzní příkaz (jméno -> SSN) však není pravdivý, protože více než jeden zaměstnanec může mít stejný název, ale různé SSN.

Triviální funkční závislost

Funktivní závislost triviální nastane, když popisujete funkční závislost atributu na kolekci atributů, který obsahuje původní atribut. Například "{A, B} -> B" je triviální funkční závislost, stejně jako "{name, SSN} -> SSN". Tento typ funkční závislosti se nazývá triviální, protože může být odvozen od zdravého rozumu. Je zřejmé, že pokud už znáte hodnotu B, potom hodnota B může být tímto vědomím jednoznačně určena.

Plně funkční závislost

Plná funkční závislost nastane, když již splňujete požadavky na funkční závislost a soubor atributů na levé straně výkazu funkční závislosti nemůže být dále redukován. Například "{SSN, age} -> name" je funkční závislost, ale není to plná funkční závislost, protože můžete odstranit věk z levé strany výkazu bez ovlivnění vztahu závislosti.

Přechodné závislost

Přechodné závislosti se vyskytují, když existuje nepřímý vztah, který způsobuje funkční závislost. Například "A -> C" je přechodná závislost, pokud je pravdivá pouze proto, že "A -> B" a "B -> C" jsou pravdivé.

Vícehodnotových závislostí

Vícenásobné závislosti se vyskytují, když přítomnost jednoho nebo více řádků v tabulce znamená přítomnost jednoho nebo více dalších řádků v téže tabulce. Například si představte automobilovou společnost, která vyrábí řadu modelů automobilů, ale vždy udělá červenou i modrou barvu každého modelu. Pokud máte tabulku, která obsahuje název modelu, barvu a rok každého automobilu, který společnost vyrábí, existuje v této tabulce vícehodnotová závislost . Pokud je řádek pro určitý název modelu a rok modrý, musí být podobný řádek odpovídající červené verzi stejného vozidla.

Význam závislostí

Závislosti databází je důležité pochopit, protože poskytují základní stavební kameny používané při normalizaci databáze . Například: