Basic Keys na Gawing Madaliang Pamamahala ng Database

Ang mga key ng database ay ang pinakamadaling paraan upang lumikha ng mahusay na pamanggit na database

Tulad ng maaaring alam mo na, ang mga database ay gumagamit ng mga talahanayan upang maisaayos ang impormasyon. (Kung wala kang pangunahing kaalaman sa mga konsepto ng database, basahin ang Ano ang Database? ) Ang bawat talahanayan ay binubuo ng isang bilang ng mga hilera, na ang bawat isa ay tumutugma sa isang solong talaan ng database. Kaya, paano itinatakda ng mga database ang lahat ng mga talang ito nang tuwid? Ito ay sa pamamagitan ng paggamit ng mga susi.

Pangunahing Mga Susi

Ang unang uri ng susi na tatalakayin natin ay ang pangunahing susi . Ang bawat talahanayan ng database ay dapat magkaroon ng isa o higit pang mga haligi na itinalaga bilang pangunahing susi . Ang halaga ng pagpipigil sa key na ito ay dapat na natatangi para sa bawat rekord sa database.

Halimbawa, ipagpalagay na mayroon kaming table na tinatawag na Mga empleyado na naglalaman ng impormasyon ng tauhan para sa bawat empleyado sa aming kompanya. Kailangan naming pumili ng isang angkop na pangunahing susi na makilala nang kakaiba ang bawat empleyado. Ang iyong unang pag-iisip ay maaaring gamitin ang pangalan ng empleyado. Hindi ito gagana nang mahusay sapagkat ito ay nalalaman na gusto mong kumuha ng dalawang empleyado na may parehong pangalan. Ang isang mas mahusay na pagpipilian ay maaaring gamitin ang isang natatanging numero ng ID ng empleyado na itinatalaga mo sa bawat empleyado kapag sila ay tinanggap. Pinipili ng ilang organisasyon na gamitin ang Mga Numero ng Social Security (o katulad na mga tagatukoy ng pamahalaan) para sa gawaing ito dahil ang bawat empleyado ay mayroon na at ang mga ito ay ginagarantiya na kakaiba. Gayunpaman, ang paggamit ng mga Numero ng Social Security para sa layuning ito ay lubos na kontrobersyal dahil sa mga alalahanin sa pagkapribado. (Kung nagtatrabaho ka para sa isang organisasyon ng pamahalaan, ang paggamit ng isang Social Security Number ay maaaring ilegal sa ilalim ng Privacy Act of 1974.) Dahil dito, ang karamihan sa mga organisasyon ay lumipat sa paggamit ng mga natatanging identifier (ID ng empleyado, ID ng mag-aaral, atbp .) na hindi ibinabahagi ang mga alalahanin sa pagkapribado.

Sa sandaling magpasya ka sa isang pangunahing susi at i-set up ang database, ang sistema ng pamamahala ng database ay ipapatupad ang pagiging natatangi ng susi.

Kung sinubukan mong magsingit ng isang tala sa isang table na may pangunahing key na dobleng ng isang umiiral na tala, ang insert ay mabibigo.

Karamihan sa mga database ay may kakayahang pagbuo ng kanilang sariling pangunahing mga susi. Maaaring i-configure ang Microsoft Access, halimbawa, upang gamitin ang uri ng data ng AutoNumber upang magtalaga ng isang natatanging ID sa bawat talaan sa talahanayan. Habang epektibo, ito ay isang masamang disenyo ng kasanayan dahil ito ay nag-iiwan sa iyo ng isang walang kahulugan na halaga sa bawat talaan sa talahanayan. Bakit hindi gamitin ang espasyo upang mag-imbak ng isang bagay na kapaki-pakinabang?

Dayuhang Keys

Ang isa pang uri ay ang banyagang susi , na ginagamit upang lumikha ng mga relasyon sa pagitan ng mga talahanayan. Ang mga likas na relasyon ay umiiral sa pagitan ng mga talahanayan sa karamihan ng mga istruktura ng database Pagbalik sa database ng aming mga empleyado, isipin na gusto naming magdagdag ng table na naglalaman ng impormasyon sa kagawaran sa database. Ang bagong talahanayang ito ay maaaring tinatawag na Mga Departamento at naglalaman ng isang malaking halaga ng impormasyon tungkol sa departamento sa kabuuan. Nais din naming isama ang impormasyon tungkol sa mga empleyado sa departamento, ngunit magkakaroon ng kalabisan upang magkaroon ng parehong impormasyon sa dalawang talahanayan (Mga Kawani at Mga Departamento). Sa halip, maaari kaming lumikha ng isang relasyon sa pagitan ng dalawang talahanayan.

Ipagpalagay natin na ginagamit ng talahanayan ng Departamento ang hanay ng Pangalan ng Kagawaran bilang pangunahing susi. Upang lumikha ng isang relasyon sa pagitan ng dalawang mga talahanayan, magdagdag kami ng isang bagong haligi sa talahanayan ng mga empleyado na tinatawag na Kagawaran. Pagkatapos ay punan namin ang pangalan ng departamento kung saan nabibilang ang empleyado. Ipinaalam din namin ang sistema ng pamamahala ng database na ang haligi ng Departamento sa talahanayan ng mga empleyado ay isang banyagang susi na tumutukoy sa talahanayan ng Departamento.

Pagkatapos ay ipatupad ng database ang referential integridad sa pamamagitan ng pagtiyak na ang lahat ng mga halaga sa haligi ng Departamento ng talahanayan ng mga empleyado ay may kaukulang mga entry sa talahanayan ng Departamento.

Tandaan na walang pagkakatuwang pagpihit para sa isang banyagang susi. Maaari naming (at malamang na gawin) ay may higit sa isang empleyado na nabibilang sa isang departamento. Gayundin, walang kinakailangan na ang isang entry sa mga talahanayan ng Departamento ay may anumang nararapat na pagpasok sa talahanayan ng Mga Empleyado. Posible na magkaroon kami ng departamento na walang mga empleyado.

Para sa higit pa sa paksang ito, basahin ang Paglikha ng mga Dayuhang Key .