Funkcionalna ovisnost u bazi podataka

Funkcionalne ovisnosti Pomoć Izbjegavajte dupliciranje podataka

Funkcionalna ovisnost u bazi podataka provodi skup ograničenja između atributa. To se događa kada jedan atribut u relaciji jedinstveno odredi drugi atribut. To se može napisati A -> B, što znači da "B funkcionalno ovisi o A." To se naziva i ovisnost o bazama podataka .

U ovom odnosu, A određuje vrijednost B, dok B ovisi o A.

Zašto funkcionalna ovisnost je važna u dizajnu baze podataka

Funkcionalna ovisnost pomaže osigurati valjanost podataka. Razmislite o tablici Zaposlenici koji navode karakteristike uključujući SSN, ime, datum rođenja, adresu i tako dalje.

Atribut SSN određuje vrijednost imena, datuma rođenja, adrese i možda drugih vrijednosti jer je broj socijalnog osiguranja jedinstven, a ime, datum rođenja ili adresa možda neće biti. Možemo to napisati ovako:

SSN -> ime, datum rođenja, adresa

Dakle, ime, datum rođenja i adresa funkcionalno su ovisni o SSN-u. Međutim, obrnuti naredba (naziv -> SSN) nije istina jer više od jednog zaposlenika može imati isto ime, ali nikada neće imati isti SSN. Još jedan konkretniji način, ako znamo vrijednost SSN atributa, možemo pronaći vrijednost imena, datuma rođenja i adrese. Ali ako znamo vrijednost samo atributa imena, ne možemo identificirati SSN.

Lijeva strana funkcionalne ovisnosti može sadržavati više od jednog atributa. Pretpostavimo da posjedujemo tvrtku s više lokacija. Možda imamo stol Zaposlenik s zaposlenicima atributa, naslovom, odjelom, lokacijom i upraviteljem.

Zaposlenik određuje mjesto na kojem radi, pa postoji ovisnost:

zaposlenik -> mjesto

No, lokacija može imati više upravitelja, tako da zaposlenik i odjel zajedno određuju upravitelja:

zaposlenik, odjel -> voditelj

Funkcionalna ovisnost i normalizacija

Funkcionalna ovisnost pridonosi onome što se naziva normalizacijom baze podataka, čime se osigurava integritet podataka i smanjuje redundancije podataka. Bez normalizacije, ne postoji jamstvo da su podaci u bazi podataka točni i pouzdani.