Ovisnost u više baza podataka u dizajnu baze podataka

Višesamilna ovisnost prekida četvrti normalan oblik

U relacijskoj bazi podataka, ovisnost se događa kada informacije pohranjene u istoj tablici baze podataka jedinstveno određuju druge podatke pohranjene u istoj tablici. Višeslojna ovisnost nastaje kada prisutnost jednog ili više redaka u tablici podrazumijeva prisutnost jednog ili više drugih redaka u istoj tablici. Drugo, dva atributa (ili stupci) u tablici su međusobno neovisni, ali oboje ovise o trećem atributu.

Mnogobojna ovisnost sprječava normizacijski standard četvrti normalan oblik (4NF). Relacijske baze podataka slijede pet normalnih oblika koji predstavljaju smjernice za dizajn rekorda. Oni sprečavaju ažuriranje anomalija i nedosljednosti u podacima. Četvrti normalan oblik bavi se mnogostrukim odnosima u bazi podataka .

Ovisnost funkcionalne ovisnosti ili više vrijednosti

Da biste razumjeli višenamjensku ovisnost, korisno je ponovno provjeriti funkcionalnu ovisnost.

Ako atribut X jedinstveno određuje atribut Y, onda Y funkcionalno ovisi o X. To je napisano kao X -> Y. Na primjer, u Studentskoj tablici ispod, Student_Name određuje Major:

studenti
Ime studenta glavni
Ravi Povijest umjetnosti
Bet Kemija


Ova funkcionalna ovisnost može se napisati: Student_Name -> Major . Svaki Student_Name određuje točno jednog bojnika, a ne više.

Ako želite da baza podataka prati i sportove koje studenti uče, možda mislite da je najlakši način da to učinite samo dodati još jedan stupac pod nazivom Sport:

studenti
Ime studenta glavni Sport
Ravi Povijest umjetnosti Nogomet
Ravi Povijest umjetnosti odbojka
Ravi Povijest umjetnosti Tenis
Bet Kemija Tenis
Bet Kemija Nogomet


Problem je u tome što i Ravi i Beth igraju više sportova. Potrebno je dodati novi red za svaki dodatni sport.

Ta tablica uvodi višeznačnu ovisnost jer su glavni i sportni međusobno neovisni, ali oboje ovise o studentu.

Ovo je jednostavan primjer i lako prepoznatljiva, no ovisnost više vrijednosti mogla bi postati problem u velikoj, složenoj bazi podataka.

Mnogobojna ovisnost napisana je X -> -> Y. U ovom slučaju:

Student_Name -> -> Major
Student_Name -> -> Sport

Ovo se glasi kao "Student_Name multidetermines Major" i "Student_Name multidetermines Sport".

Mnogobrojna ovisnost uvijek zahtijeva najmanje tri atributa jer se sastoji od najmanje dva atributa koji ovise o trećoj.

Ovisnost i normalizacija više vrijednosti

Tablica s višeznačnom ovisnošću krši standard normalizacije Četvrtog normalnog obrasca (4NK) jer stvara nepotrebne redundancije i može doprinijeti nedosljednim podacima. Da bi se to dovelo do 4NF, potrebno je razbiti te podatke u dvije tablice.

U sljedećoj je tablici funkcionalna ovisnost Studentskog imena -> Major, i bez viševalificiranih zavisnosti:

Studenti i majori
Ime studenta glavni
Ravi Povijest umjetnosti
Ravi Povijest umjetnosti
Ravi Povijest umjetnosti
Bet Kemija
Bet Kemija

Iako ova tablica također ima jednu funkcionalnu ovisnost Studentskog imena -> Sport:

Studenti i sport
Ime studenta Sport
Ravi Nogomet
Ravi odbojka
Ravi Tenis
Bet Tenis
Bet Nogomet

Jasno je da se normalizacija često rješava pojednostavljenjem složenih tablica tako da sadrži informacije povezane s jedinom idejom ili temom, a ne pokušavajući napraviti jednu tablicu sadrže previše različitih informacija.