Odvisnost je omejitev, ki velja ali opredeljuje razmerje med atributi. Pojavljajo se v zbirki podatkov, kadar informacije, shranjene v isti tabeli zbirke podatkov, edinstveno določajo druge podatke, shranjene v isti tabeli. To lahko opisate tudi kot razmerje, kjer je poznavanje vrednosti enega atributa (ali nabora atributov) dovolj, da vam pove vrednost drugega atributa (ali niza atributov) v isti tabeli.
Odvisnosti baze podatkov pogosto zmede tako študente kot tudi baze podatkov strokovnjake. Na srečo niso tako zapleteni, kot se morda zdijo. Najbolje jih je razložiti z nekaj primeri. Tukaj bomo preučili skupne vrste odvisnosti od baze podatkov.
Odvisnosti od baze podatkov in funkcionalne odvisnosti
Če rečemo, da obstaja odvisnost med atributi v tabeli, je enaka dejstvu, da obstaja funkcijska odvisnost med temi atributi. Če obstaja odvisnost v bazi podatkov, tako da je atribut B odvisen od atributa A, bi to napisali kot:
A -> B
Na primer, v tabeli s seznami značilnosti zaposlenih, vključno s številko socialnega zavarovanja (SSN) in imenom, lahko rečemo, da je ime odvisno od SSN (ali SSN -> ime), ker je ime delavca mogoče enolično določiti iz SSN. Vendar obratna izjava (ime -> SSN) ni res, ker ima več kot en zaposleni isto ime, vendar vedno imajo različne SSN. Trivialna funkcionalna odvisnost se pojavi, ko opisujete funkcionalno odvisnost atributa na zbirki atributov, ki vključuje izvorni atribut. Na primer, {A, B} -> B je trivialna funkcionalna odvisnost, kot je {ime, SSN} -> SSN. Ta vrsta funkcionalne odvisnosti se imenuje trivialna, ker jo je mogoče izpeljati iz zdravega razumevanja. Očitno je, da če že poznate vrednost B, potem je vrednost B lahko enolično določena s tem znanjem. Popolna funkcionalna odvisnost se zgodi, ko že izpolnjujete zahteve za funkcionalno odvisnost, in nabor atributov na levi strani stavka funkcionalne odvisnosti ni več mogoče zmanjšati. Na primer, {SSN, age} -> ime je funkcijska odvisnost, vendar ni polna funkcionalna odvisnost, ker lahko odstranite starost z leve strani stavka, ne da bi vplivali na odvisnost. Tranzicijske odvisnosti se pojavijo, ko je posredno razmerje, ki povzroča funkcionalno odvisnost. Na primer, A -> C je tranzitivna odvisnost, če je resnična le zato, ker sta oba A -> B in B -> C resnična. Večvalentne odvisnosti se pojavijo, če prisotnost ene ali več vrstic v tabeli pomeni prisotnost ene ali več vrstic v isti tabeli. Predstavljajte si na primer avtomobilsko podjetje, ki proizvaja veliko modelov avtomobila, vendar vedno naredi rdeče in modre barve vsakega modela. Če imate izdelano mizo, ki vsebuje ime modela, barvo in leto vsakega avtomobila, obstaja večvalentna odvisnost v tej tabeli. Če obstaja vrsta za določeno ime modela in leto v modri barvi, mora biti tudi podobna vrstica, ki ustreza rdeči različici istega avtomobila. Odvisnosti baz podatkov so pomembne za razumevanje, saj zagotavljajo osnovne gradnike, ki se uporabljajo pri normalizaciji baz podatkov, procesu učinkovite organizacije podatkov v bazo podatkov. Na primer: Trivialne funkcionalne odvisnosti
Polne funkcionalne odvisnosti
Prehodne odvisnosti
Večvalentne odvisnosti
Pomen odvisnosti










