Duomenų bazių dizaineriai plačiai naudoja raktus kuriant reliacines duomenų bazes. Tarp labiausiai paplitusių iš šių klavišų yra pagrindiniai raktai ir užsienio raktai. Duomenų bazės išorinis raktas yra reliacinės lentelės laukas, atitinkantis pagrindinės kitos lentelės raktą. Norėdami suprasti, kaip veikia užsienio kalba, atidžiau pažvelkime į reliacinės duomenų bazės idėją.
Kai kurie reliacinių duomenų bazių pagrindai
Reliacinėje duomenų bazėje duomenys yra saugomi lentelėse, kuriose yra eilutės ir stulpeliai, todėl juos lengva ieškoti ir manipuliuoti. Yra keletas rimtų matematikos už reliacinės duomenų bazės koncepcijos (reliacinės algebra, pasiūlyta E.F.
1970 m. IBM "Codd"), tačiau tai nėra šio straipsnio tema.
Praktiniais tikslais (ir nemetantikai) reliacinė duomenų bazė įrašo susijusius duomenis eilučių ir stulpelių. Toliau - ir čia yra įdomu - dauguma duomenų bazių yra sukurtos taip, kad vienoje lentelėje esantys duomenys galėtų pasiekti kitų lentelių duomenis. Šis gebėjimas kurti ryšius tarp stalų yra tikroji reliacinės duomenų bazės galia.
Užsienio raktų naudojimas
Dauguma lentelių, ypač didelėse sudėtingose duomenų bazėse, turi pirminius raktus. Lentelės, skirtos pasiekti kitas lenteles, taip pat turi turėti išorinį raktą.
Jei norite naudoti dažnai cituojamą "Northwinds" duomenų bazę, čia pateikiama ištrauka iš lentelės Produktas:
| ProductID | Produkto pavadinimas | KategorijaID | "NumberPerU" | Vienetinis mokestis |
|---|---|---|---|---|
| 1 | Chai | 1 | 10 dėžių x 20 krepšių | 18.00 |
| 2 | Čangas | 1 | 24 - 12 oz buteliai | 19.00 |
| 3 | Anizuotasis sirupas | 2 | 12-550 ml buteliai | 10.00 |
| 4 | Chef Antono Cajūno prieskoniai | 2 | 48 - 6 auksiniai stiklainiai | 22.00 |
| 5 | Chef Antono Gumbo mišinys | 2 | 36 dėžutės | 21.35 |
| 6 | Senelės "Boysenberry Spread" | 2 | 12 - 8 oz. Stiklainiai | 25.00 |
| 7 | Dėdės Bobo organiniai džiovinti kriaušės | 7 | 12 - 1 lb pkgs. | 30.00 |
The ProductID stulpelis yra šio pagrindinio raktas. Jis priskiria unikalų ID kiekvienam produktui.
Šioje lentelėje taip pat yra užsienio rakto stulpelio KategorijaID. Kiekvienas Produkto lentelės produktas susijęs su įrašu kategorijų lentelėje, kurioje apibrėžiama produkto kategorija.
Atkreipkite dėmesį į šį ištrauką iš duomenų bazės lentelių kategorijų:
| KategorijaID | KategorijaName | apibūdinimas |
|---|---|---|
| 1 | Gėrimai | Nealkoholiniai gėrimai, kavos, arbatos, alaus ir alaus |
| 2 | Prieskoniai | Saldūs ir pikantiški padažai, pagardai, patiekalai ir pagardai |
| 3 | Saldumynai | Desertai, saldainiai ir smulkmenos |
| 5 | Pieno produktai | Sūriai |
Stulpelis KategorijaID yra šio stulpelio pirminis raktas. (Nėra išorinio rakto, nes nereikia prisijungti prie kitos lentelės.) Kiekvienas išorinis raktas lentelėje "Produktas" nurodo pirminį raktą kategorijų lentelėje. Pavyzdžiui, produktas Chai priskiriamas kategorijai "Gėrimai", o Aništo sirupas priklauso kategorijai Prieskoniai.
Toks susiejimas sukuria daugybė būdų, kaip naudoti ir pakartotinai naudoti duomenis reliacinėje duomenų bazėje.












