Një çelës i jashtëm hap derën për një botë të tërë të dhënash
Dizajnerët e bazës së të dhënave përdorin gjerësisht çelësat kur zhvillojnë bazat e të dhënave relacionale. Ndër më të zakonshmet e këtyre çelësave janë çelësat kryesorë dhe çelësat e jashtëm. Një çelës i të dhënave të huaj është një fushë në një tabelë relacionale që përputhet me kolonën kryesore të një tabele tjetër. Për të kuptuar se si funksionon një çelës i jashtëm, le të hedhim një vështrim më të afërt mbi idenë e një baze të dhënash relacionale.
Disa bazat e bazave të të dhënave relacionale
Në një bazë të dhënash relacionale, të dhënat ruhen në tabela që përmbajnë rreshta dhe kolona, duke e bërë të lehtë për të kërkuar dhe manipuluar. Ka një matematikë serioze prapa konceptit të bazës së të dhënave relacionale (algjebra relacionale, e propozuar nga EF
Codd në IBM në vitin 1970), por kjo nuk është temë e këtij artikulli.
Për qëllime praktike (dhe jo-matematikanë), një databazë relacionale ruan të dhënat "lidhur" në rreshta dhe kolona. Më tej - dhe këtu është ajo ku bëhet interesante - shumica e bazave të të dhënave janë projektuar në mënyrë që të dhënat në një tabelë të mund t'i qasen të dhënave në një tabelë tjetër. Kjo aftësi për të krijuar marrëdhënie midis tabelave është fuqia e vërtetë e një baze të dhënash relacionale.
Përdorimi i çelësave të jashtëm
Shumica e tabelave, veçanërisht ato në bazat e të dhënave të mëdha dhe komplekse, kanë çelësa primar. Tabelat që janë projektuar për të hyrë në tavolina të tjera duhet gjithashtu të kenë një çelës të jashtëm.
Për të përdorur bazën e të dhënave Northwinds të cituara zakonisht, këtu është një fragment nga një tabelë e Produkteve:
Numri identifikues i produktit | Emri i produktit | CategoryID | QuantityPerU | UnitPrice |
---|---|---|---|---|
1 | Chai | 1 | 10 kuti x 20 çanta | 18.00 |
2 | chang | 1 | 24 - 12 oz shishe | 19.00 |
3 | Syrup aniseed | 2 | 12 - 550 ml shishe | 10.00 |
4 | Ëndrra e Cajunit të Chef Anton | 2 | 48 - 6 oz kavanoza | 22.00 |
5 | Chef Anton's Gumbo Mix | 2 | 36 kuti | 21,35 |
6 | Shpërndarja e Boysenberry e gjysheve | 2 | 12 - 8 oz kavanoza | 25.00 |
7 | Dardha Organike të Xhaxhit Bob | 7 | 12 - 1 lb pkgs. | 30.00 |
Kolona ProductID është çelësi kryesor i kësaj tryeze. Cakton një ID unike për secilin produkt.
Kjo tabelë gjithashtu përmban një kolonë të titullit të huaj, CategoryID . Çdo produkt në tabelën e Produkteve lidhet me një hyrje në tabelën e kategorive që përcakton kategorinë e produktit.
Vini re këtë fragment nga tabela e kategorive të bazës së të dhënave:
CategoryID | CategoryName | Përshkrim |
---|---|---|
1 | pije | Pijet joalkoolike, coffe, teas, birra, dhe ales |
2 | condiments | Salcat e ëmbël dhe të shijshme, shijon, përhapet, dhe seasonings |
3 | Confections | Desserts, candies, dhe sweetbreads |
5 | Produktet e qumështit | djathrave |
Kategoria CategoryID është çelësi kryesor i kësaj rubrike. (Nuk ka çelës të huaj sepse nuk ka nevojë për qasje në një tabelë tjetër.) Çdo çelës i jashtëm në tabelën e Produkteve lidhet me një çelës primar në tabelën e Kategoritë. Për shembull, produkti Chai i është caktuar një kategori "Pije", ndërsa Aniseed Syrup është në kategorinë Condiments.
Ky lloj i lidhjes krijon një numër mënyrash për përdorimin dhe ripërdorimin e të dhënave në një bazë të dhënash relacionale.