Funkcionalna odvisnost v podatkovni bazi

Funkcionalne odvisnosti Pomoč Izogibajte se podvajanju podatkov

Funkcionalna odvisnost v podatkovni bazi uveljavlja niz omejitev med atributi. To se zgodi, ko en atribut v razmerju enolično določa drug atribut. To je mogoče napisati A -> B, kar pomeni, da je "B funkcionalno odvisna od A." To se imenuje tudi odvisnost od baze podatkov .

V tem razmerju A določi vrednost B, medtem ko je B odvisen od A.

Zakaj je funkcionalna odvisnost pomembna pri oblikovanju baz podatkov

Funkcionalna odvisnost pomaga zagotoviti veljavnost podatkov. Pregledati tabelo Zaposleni, ki navajajo značilnosti, vključno s številko socialnega zavarovanja (SSN), imenom, datumom rojstva, naslovom ipd.

Atribut SSN bo določil vrednost imena, datuma rojstva, naslova in morda drugih vrednosti, ker je številka socialnega zavarovanja edinstvena, ime, datum rojstva ali naslov pa morda ni. To lahko napišemo tako:

SSN -> ime, datum rojstva, naslov

Zato je ime, datum rojstva in naslov funkcionalno odvisna od SSN. Vendar pa obratna izjava (ime -> SSN) ni resnična, ker ima več kot en zaposleni enako ime, vendar nikoli ne bo imel istega SSN. Postavite še en, bolj konkreten način, če poznamo vrednost atributa SSN, lahko najdemo vrednost imena, datuma rojstva in naslova. Če pa namesto tega vedo samo vrednost atributa, ne moremo identificirati SSN-ja.

Leva stran funkcionalne odvisnosti lahko vsebuje več kot en atribut. Recimo, da imamo podjetje z več lokacijami. Morda imamo tabelo zaposlenega z atributi zaposlenega, naslova, oddelka, lokacije in managerja.

Zaposleni določi lokacijo, na kateri dela, zato obstaja odvisnost:

zaposleni -> lokacija

Vendar ima lokacija morda več kot enega upravitelja, zato zaposleni in oddelek skupaj določita upravitelja:

zaposleni, oddelek -> vodja

Funkcionalna odvisnost in normalizacija

Funkcionalna odvisnost prispeva k temu, kar imenujemo normalizacija baz podatkov, kar zagotavlja celovitost podatkov in zmanjšuje presežne podatke. Brez normalizacije ni nobenega zagotovila, da so podatki v podatkovni bazi točni in zanesljivi.