Fungu la kigeni linafungua mlango wa ulimwengu wote wa data
Waumbaji wa databuni hufanya matumizi mengi ya funguo wakati wa kuendeleza databases za kihusiano. Miongoni mwa funguo hizi za kawaida ni funguo za msingi na funguo za kigeni. Kitufe cha kigeni cha msingi ni shamba katika meza ya uhusiano ambayo inalingana na safu ya msingi muhimu ya meza nyingine. Kuelewa jinsi ufunguo wa kigeni unavyofanya kazi, hebu tuchunguze kwa karibu wazo la databana ya uhusiano.
Baadhi ya Msingi wa Databases za Uhusiano
Katika database ya uhusiano, data ni kuhifadhiwa katika meza zenye safu na nguzo, na kufanya rahisi kutafuta na kuendesha.Kuna masomo baadhi ya nyuma nyuma ya wazo la uhusiano uhusiano (algebra uhusiano, iliyopendekezwa na EF
Codd katika IBM mwaka 1970), lakini hiyo sio mada ya makala hii.
Kwa madhumuni ya vitendo (na wasio wa hisabati), duka la kihusiano linashughulikia data "zinazohusiana" katika safu na safu. Zaidi-na hapa ndio ambapo inapata maelezo ya kuvutia sana yaliyoundwa ili data katika meza moja inaweza kufikia data kwenye meza nyingine. Uwezo huu wa kuunda mahusiano kati ya meza ni nguvu halisi ya database ya uhusiano.
Kutumia Keki za Kigeni
Viwango vingi, hususani ambavyo vinasomeka, vina vifungu vya msingi. Majedwali yaliyopangwa kufikia meza nyingine lazima pia kuwa na ufunguo wa kigeni.
Ili kutumia database ya Northwinds iliyoonyeshwa kwa kawaida, hapa ni kifungu cha kutoka kwa Bidhaa ya meza:
BidhaaID | Jina la bidhaa | JamiiID | WingiPerU | UnitPrice |
---|---|---|---|---|
1 | Chai | 1 | Sanduku 10 x mifuko 20 | 18.00 |
2 | Chang | 1 | Vitambaa 24 - 12 oz | 19.00 |
3 | Siri iliyosababishwa | 2 | Vitambaa 12 - 550 ml | 10.00 |
4 | Chejun Anton Cajun Seasoning | 2 | 48 - 6 mitungi ya oz | 22.00 |
5 | Gumbo Mix ya Chef Anton | 2 | Sanduku 36 | 21.35 |
6 | Wamajana wa Boysenberry Kuenea | 2 | 12 - 8 jani mito | 25.00 |
7 | Ndugu za Mjomba Bob za Peke Bob | 7 | 12 - 1 lb pkgs. | 30.00 |
Sura ya ProductID ni ufunguo wa msingi wa meza hii. Inashirikisha ID ya pekee kwa kila bidhaa.
Jedwali hili pia lina safu ya ufunguo wa kigeni, JamiiID . Kila bidhaa katika Jedwali la Bidhaa huunganisha kuingia kwenye Jedwali la Jamii ambalo linafafanua jamii hiyo ya bidhaa.
Angalia hii kutoka kwenye meza ya Jamii ya database:
JamiiID | JamiiName | Maelezo |
---|---|---|
1 | Vinywaji | Vinywaji vyema, kahawa, tea, bia, na visa |
2 | Kanuni | Mikate ya tamu na ya kupendeza, inapanua, ineneza, na msimu |
3 | Mazungumzo | Desserts, pipi, na matamu |
5 | Bidhaa za Maziwa | Jibini |
JamiiID ya safu ni funguo la msingi la safu. (Haina ufunguo wa kigeni kwa sababu hauna haja ya kufikia meza nyingine.) Kila kitu cha nje kigeni katika viungo vya Bidhaa husababisha ufunguo wa msingi katika meza ya Jamii. Kwa mfano, Chai ya bidhaa inapewa kikundi cha "Vinywaji", wakati Siri ya Aniseed iko kwenye Kanuni za Kundi.
Aina hii ya kuunganisha inajenga njia nyingi za kutumia na kutumia tena data katika dhana ya kihusiano.