Full Functional Dependency in Database Normalization

Basa rakakwana rinoshandiswa kune imwe nzvimbo yepamusoro-soro yepamutemo inofananidzwa nehuwandu hwemaitiro eChipiri Chechimiro Chechipiri (2NF) . Muchidimbu, izvi zvinoreva kuti inosangana nezvinodiwa zveTrans Normal Form (1NF), uye zvisizvo zvisiri izvo zvinokosha zvinoshanda zvakakwana zvichienderana nekona yekutanga.

Izvi hazvisi zvakaoma sezvazvinogona kurira. Ngatitarisei pane izvi zvakajeka.

Nhepfenyuro yeFomu Yokutanga Yakarongeka

Pamberi pebhuku rinogona kunyatsogadzikana, rinofanira kutanga ritenderana neFirst Normal Form .

Zvose izvi zvinoreva kuti nhengo imwe neimwe inofanirwa kubata chinhu chimwechete, atomiki.

Somuenzaniso, tafura inotevera haifaniri kutevedzera 1NF, nokuti mushandi Tina akabatanidzwa kune nzvimbo mbiri, zvose zviri muchitokisi chimwe chete:

Chirongwa Chekutanga Chakanga Chisina Kuita
Mushandi Nzvimbo
John Los Angeles
Tina Los Angeles, Chicago

Kubvumira izvi zvigadzirwa zvinogona kukanganisa kushandiswa kwemashoko kana zvinyorwa. Kuti uone 1NF kutevedza, gadzirisa tafura kuitira kuti zvese (kana kuti makoromeri masero) aite chinhu chimwe chete:

Mutemo Wokutanga Wekuteerera
Mushandi Nzvimbo
John Los Angeles
Tina Los Angeles
Tina Chicago

Asi 1NF haisati yakwana kudzivisa zvinetso nedata.

Nzira 2NF Inoshanda Sei Kuti Uve Nechokwadi Chekudzivirira

Kuti zvive zvizere zvakakwana, zvose zvisati zvichisarudzwa zvinokosha zvinofanirwa zvichienderana nekona yekutanga. (Yeuka, chinhu chinonyanya kukosha chiri chinhu chinokosha (somuenzaniso, chinhu chikuru kana chekunze) chinoshandiswa kunyanya kuziva rekodhi rekodhi.

Vashandi vekugadzira mapepa vanoshandisa rukuro kurondedzera hukama huripo huri pakati pezvinhu:

Kana chirevo A chichisarudzira kukosha kweB, tinonyora izvi A -> B - zvinoreva kuti B inoshanda zvichienderana neA A. Muukama uhwu, A inotarisa kukosha kweB, apo B iripo A.

Semuenzaniso, mune iri rekushanda kwemashandisirwo emabasa, EmployeeID neDeptID ndevamwe vheti dzekugadzirira: Bhizimisi ndiro ndiro gwaro rekutanga apo DeptID iri chinyorwa chekunze.

Chero humwe humwe unhu - munyaya iyi, EmployeeName uye DeptName - inofanira kuvimba nekona yekutanga yekuwana kukosha kwayo.

Vashandi VeMabasa
VashandiID EmployeeName DeptID DeptName
Emp1 John Dept001 Mari
Emp2 Tina Dept003 Sales
Emp3 Carlos Dept001 Mari

Muchiitiko ichi, tafura haina kunyanya kuvimba nokuti, nepo EmployeeName inofanana nechokutanga chinoita Bashandi, iDepName inofanirwa panzvimbo yeDeptID. Izvi zvinonzi kusarura zvishoma .

Kuti ita tafura iyi ienderane ne 2NF, tinoda kuparadzanisa data mumatafura maviri:

Vashandi
VashandiID EmployeeName DeptID
Emp1 John Dept001
Emp2 Tina Dept003
Emp3 Carlos Dept001

Tinobvisa chimiro cheDeptName kubva patafura yeVashandi uye tinogadzira mapurisa matsva mapoka:

Dhipatimendi
DeptID DeptName
Dept001 Mari
Dept002 Human Resources
Dept003 Sales

Iye zvino hukama huri pakati pematafura hunozara zvakakwana, kana mu 2NF.

Chikonzero nei Kunyatsovimbika Kunokosha

Kunyatso kutarisa pakati pezvigadzirwa zvemashoko kunobatsira kuvimbisa kuderera kwe data uye kudzivisa kudarika kwezvinhu.

Semuenzaniso, funga tafura iri muchikamu chiri pamusoro apa inoteerera 1NF chete. Heino iyo, zvakare:

Mutemo Wokutanga Wekuteerera
Mushandi Nzvimbo
John Los Angeles
Tina Los Angeles
Tina Chicago

Tina ane mbiri zvinyorwa. Kana tikadzokorora mumwe tisingazivi kuti pane maviri, chigumisiro chacho chingave chisingabvumirwi.

Kana, zvakadini kana tichida kuwedzera mushandi patafura ino, asi isu tisati taziva Nzvimbo? Tingave tisingabvumirwi kunyange kuwedzera mushandi mutsva kana nzvimbo yemoyo isingabvumi NULL maitiro.

Kuzara zvakakwana hausi mufananidzo wose, kunyange zvakadaro, kana zvasvika pakushambadzira. Iwe unofanirwa kuve nechokwadi chekuti database yako iri muTatu Normal Form (3NF).