Ano ang Dependencies sa Database?

Ang mga dependency ng database ay isang paksa na kadalasang nakakalito sa parehong mga mag-aaral at mga propesyonal sa database na magkamukha. Sa kabutihang palad, hindi sila kumplikado at maaaring pinakamahusay na ilarawan sa pamamagitan ng paggamit ng maraming mga halimbawa. Sa artikulong ito, sinusuri namin ang karaniwang mga uri ng dependency ng database.

Dependencies ng Database / Dependencies ng Functional

Ang isang dependency ay nangyayari sa isang database kapag ang impormasyon na nakaimbak sa parehong talahanayan ng database nang katangi ay tumutukoy sa iba pang impormasyon na nakaimbak sa parehong talahanayan. Maaari mo ring ilarawan ito bilang isang relasyon kung saan alam ang halaga ng isang katangian (o isang hanay ng mga katangian) ay sapat na upang sabihin sa iyo ang halaga ng isa pang katangian (o hanay ng mga katangian) sa parehong talahanayan.

Sinasabi na may dependency sa pagitan ng mga katangian sa isang talahanayan ay katulad ng pagsasabi na mayroong isang functional dependency sa pagitan ng mga katangiang iyon. Kung may dependency sa isang database na ang attribute na B ay nakasalalay sa katangian A, isulat mo ito bilang "A -> B".

Halimbawa, sa isang listahan ng mga katangian ng empleyado ng empleyado kasama ang Social Security Number (SSN) at pangalan, maaari itong sabihin na ang pangalan ay nakasalalay sa SSN (o pangalan ng SSN -> dahil ang pangalan ng empleyado ay maaaring natukoy nang katangi mula sa kanilang SSN. Gayunpaman, ang taliwas na pahayag (pangalan -> SSN) ay hindi totoo dahil higit sa isang empleyado ang maaaring magkaroon ng parehong pangalan ngunit iba't ibang mga SSN.

Mga Maliit na Functional Dependencies

Ang isang maliit na functional dependency ay nangyayari kapag inilalarawan mo ang isang functional dependency ng isang katangian sa isang koleksyon ng mga katangian na kasama ang orihinal na katangian. Halimbawa, "{A, B} -> B" ay isang maliit na functional dependency, tulad ng "{name, SSN} -> SSN". Ang ganitong uri ng functional dependency ay tinatawag na walang kuwenta dahil maaaring ito ay nagmula mula sa sentido komun. Ito ay malinaw na kung alam mo na ang halaga ng B, kung gayon ang halaga ng B ay maaaring katangi-tanging natutukoy ng kaalaman na iyon.

Buong Dependency na Functional

Ang isang buong functional dependency ay nangyayari kapag natugunan mo na ang mga kinakailangan para sa isang functional dependency at ang hanay ng mga katangian sa kaliwang bahagi ng functional statement dependency ay hindi maaaring mabawasan ang anumang karagdagang. Halimbawa, ang "{SSN, age} -> pangalan" ay isang functional dependency, ngunit hindi ito isang buong functional dependency dahil maaari mong alisin ang edad mula sa kaliwang bahagi ng pahayag na hindi nakakaapekto sa kaugnayan ng dependency.

Transitive Dependencies

Ang mga transitive dependency ay nangyayari kapag may di-tuwirang relasyon na nagiging sanhi ng isang functional dependency. Halimbawa, ang "A -> C" ay isang pansamantalang dependency kung totoo lamang ito dahil pareho ang "A -> B" at "B -> C" ay totoo.

Multivalued Dependencies

Ang mga multivalued dependency ay nangyayari kapag ang pagkakaroon ng isa o higit pang mga hilera sa isang talahanayan ay nagpapahiwatig ng pagkakaroon ng isa o higit pang mga hanay sa mismong mesa. Halimbawa, isipin ang isang kumpanya ng kotse na gumagawa ng maraming mga modelo ng kotse, ngunit palaging gumagawa ng parehong pula at bughaw na kulay ng bawat modelo. Kung mayroon kang isang talahanayan na naglalaman ng pangalan ng modelo, kulay at taon ng bawat kotse ang mga paninda ng kumpanya, mayroong isang multivalued dependency sa table na iyon. Kung mayroong isang hilera para sa isang tiyak na pangalan ng modelo at taon na may asul, mayroon ding isang katulad na hilera na tumutugma sa pulang bersyon ng parehong kotse.

Kahalagahan ng Dependencies

Ang mga dependency ng database ay mahalaga na maunawaan dahil nagbibigay sila ng mga pangunahing bloke ng gusali na ginagamit sa pag- normalisasyon ng database . Halimbawa: