Якія залежнасці базы дадзеных?

залежнасцяў базы дадзеных з'яўляюцца тэмай, якая часта блытае як студэнтаў і спецыялістаў па базах дадзеных, так. На шчасце, яны не так ужо складаныя і лепш за ўсё могуць быць праілюстраваны з дапамогай выкарыстання шэрагу прыкладаў. У гэтым артыкуле мы разгледзім агульныя тыпы залежнасцяў базы дадзеных.

Залежнасці базы даных / функцыянальныя залежнасці

Залежнасць ўзнікае ў базе дадзеных, калі інфармацыя захоўваецца ў адной і той жа табліцы базы дадзеных адназначна вызначае іншую інфармацыю, якая захоўваецца ў той жа табліцы. Вы таксама можаце апісаць гэта як адносіны , у якіх ведаючы значэнне аднаго атрыбуту (або набор атрыбутаў) досыць , каб сказаць вам значэнне іншага атрыбуту (або набор атрыбутаў) у той жа табліцы.

Сказаць, што існуе залежнасць паміж атрыбутамі ў табліцы так жа, як кажуць, што існуе функцыянальная залежнасць паміж гэтымі атрыбутамі. Калі існуе залежнасць у базе дадзеных такім чынам, што атрыбут B залежыць ад атрыбуту А, можна было б напісаць гэта як «A -> B».

Напрыклад, у табліцы спісу характарыстык супрацоўнікаў, у тым ліку нумар сацыяльнага страхавання (SSN) і імя, можна сказаць, што назва залежыць ад SSN (або ССН -> назва), таму што імя супрацоўніка можа быць адназначна вызначаны з іх ССН. Аднак адваротнае зацвярджэнне (імя -> SSN) гэта не так, таму што больш, чым адзін супрацоўнік можа мець такое ж імя, але розныя Пла.

Трывіяльныя Функцыянальныя залежнасці

Найпростая функцыянальная залежнасць мае месца , калі вы апісваеце функцыянальную залежнасць атрыбуту на калекцыі атрыбутаў , якія ўключаюць у сябе зыходны атрыбут. Напрыклад, «{A, B} -> У» з'яўляецца трывіяльным функцыянальная залежнасць, як ёсць «{імя, Пла} -> Пла». Гэты тып функцыянальнай залежнасці называецца трывіяльным, паколькі яна можа быць атрымана з здаровага сэнсу. Відавочна, што калі вы ўжо ведаеце, значэнне B, тое значэнне B можа быць адназначна вызначаецца гэтым веданнем.

Поўныя функцыянальныя залежнасці

Поўная функцыянальная залежнасць мае месца , калі вы ўжо адпавядаюць патрабаванням да функцыянальнай залежнасці і набор атрыбутаў на левай баку функцыянальнай залежнасці заява не можа быць зведзена далей. Напрыклад, «{Пла, узрост} -> назва» з'яўляецца функцыянальная залежнасць, але яна не з'яўляецца поўнай функцыянальнай залежнасці , таму што вы можаце выдаліць узрост ад левай частцы аператара , не ўплываючы на стаўленне залежнасці.

транзітыўнасць залежнасці

Пераходныя залежнасці ўзнікае , калі ёсць ўскоснае стаўленне , якое выклікае функцыянальную залежнасць. Напрыклад, «А -> З» з'яўляецца транзітыўнай залежнасцю , калі яна дакладная толькі таму , што як «А -> Б» і «В -> З» з'яўляюцца праўдзівымі.

мнагазначныя залежнасці

Мнагазначныя залежнасці ўзнікаюць , калі наяўнасць адной або некалькіх радкоў у табліцы азначае наяўнасць аднаго ці некалькіх іншых радкоў у той жа табліцы. Напрыклад, уявіце сабе аўтамабільную кампанію, якая вырабляе шмат мадэляў аўтамабіляў, але заўсёды робіць як чырвоныя і сінія колеры кожнай мадэлі. Калі ў вас ёсць табліца , якая змяшчае назва мадэлі, колер і год кожнага аўтамабіля кампанія вырабляе, існуе мнагазначная залежнасць у гэтай табліцы. Калі ёсць радок для пэўнага назвы мадэлі і года ў сіні колер, таксама павінна быць падобная радок, адпаведная чырвонай версіі гэтага ж аўтамабіля.

важнасць залежнасцяў

Залежнасцяў базы дадзеных важна зразумець , таму што яны забяспечваюць асноўныя будаўнічыя блокі , якія выкарыстоўваюцца ў нармалізацыі баз дадзеных . Напрыклад: