Závislosť je obmedzenie, ktoré sa vzťahuje alebo definuje vzťah medzi atribútmi. Vyskytuje sa v databáze, keď informácie uložené v rovnakej databázovej tabuľke jednoznačne určujú iné informácie uložené v rovnakej tabuľke. Môžete to tiež opísať ako vzťah, pri ktorom je hodnota jedného atribútu (alebo množiny atribútov) dostatočná, aby ste v tej istej tabuľke uviedli hodnotu iného atribútu (alebo množiny atribútov).
Závislosť databázy často zamieňa študentov, ako aj profesionálov v oblasti databáz. Našťastie nie sú také zložité, ako sa môžu zdajú. Najlepšie je ich vysvetliť pomocou niekoľkých príkladov. Tu budeme skúmať spoločné typy závislostí databáz.
Databázové závislosti a funkčné závislosti
Povedal, že existuje závislosť medzi atribútmi v tabuľke, je to isté ako tvrdenie, že medzi týmito atribútmi existuje funkčná závislosť. Ak existuje závislosť v databáze tak, že atribút B závisí od atribútu A, napíšete to takto:
A -> B
Napríklad v tabuľke, v ktorej sa uvádzajú charakteristiky zamestnancov, vrátane čísla SSN (Social Security Number) a mena, možno povedať, že meno je závislé od SSN (alebo SSN -> name), pretože meno zamestnanca môže byť jednoznačne určené SSN. Reverzné vyhlásenie (meno -> SSN) však nie je pravdivé, pretože viac ako jeden zamestnanec môže mať rovnaké meno, ale vždy má iné SSN. Funkčná závislosť triviálne nastane, keď opíšeme funkčnú závislosť atribútu na kolekcii atribútov, ktoré obsahujú pôvodný atribút. Napríklad {A, B} -> B je triviálna funkčná závislosť, ako je {name, SSN} -> SSN. Tento typ funkčnej závislosti sa nazýva triviálne, pretože môže byť odvodený zo zdravého rozumu. Je zrejmé, že ak už poznáte hodnotu B, potom hodnota B môže byť jednoznačne určená týmito vedomosťami. Úplná funkčná závislosť nastane, keď už spĺňate požiadavky na funkčnú závislosť a súbor atribútov na ľavej strane príkazu na funkčnú závislosť nemožno ďalej znížiť. Napríklad meno {SSN, age} -> je funkčná závislosť, ale nie je to plná funkčná závislosť, pretože môžete odstrániť vek z ľavej strany výkazu bez toho, aby ste ovplyvnili vzťah závislosti. Transitívne závislosti sa vyskytujú vtedy, keď existuje nepriamy vzťah, ktorý spôsobuje funkčnú závislosť. Napríklad A -> C je tranzitívna závislosť, keď je pravda iba preto, že obe A -> B a B -> C sú pravdivé. Závislosť s viacerými hodnotami sa vyskytuje, keď prítomnosť jedného alebo viacerých riadkov v tabuľke znamená prítomnosť jedného alebo viacerých ďalších riadkov v tej istej tabuľke. Predstavte si napríklad automobilovú spoločnosť, ktorá vyrába veľa modelov automobilov, ale vždy robí červené a modré farby každého modelu. Ak máte tabuľku, ktorá obsahuje názov modelu, farbu a rok každého automobilu, ktorý spoločnosť vyrába, v tejto tabuľke existuje viacnásobná závislosť. Ak existuje riadok pre určitý názov modelu a rok v modrej farbe, musí existovať aj podobný riadok zodpovedajúci červenej verzii toho istého auta. Základy databázy sú dôležité na pochopenie, pretože poskytujú základné stavebné bloky používané v normalizácii databázy, proces efektívneho organizovania údajov v databáze. Napríklad: Triviálne funkčné závislosti
Plne funkčné závislosti
Transitívne závislosti
Viachodnotové závislosti
Význam závislostí













