Osnovne ključe, ki olajšajo upravljanje baz podatkov

Ključi baze podatkov so najlažji način za ustvarjanje učinkovite relacijske baze podatkov

Kot že morda že poznate, baze podatkov uporabljajo tabele za organiziranje informacij. (Če nimate osnovnega poznavanja konceptov baz podatkov, preberite, kaj je baza podatkov? ) Vsaka tabela je sestavljena iz več vrstic, od katerih vsak ustreza enotnemu zapisu baze podatkov. Torej, kako baze podatkov vodijo vse te evidence naravnost? Z uporabo ključev.

Primarne tipke

Prvi tip ključa, o katerem bomo razpravljali, je primarni ključ . Vsaka tabela zbirke podatkov mora imeti enega ali več stolpcev, ki so določeni kot primarni ključ . Vrednost tega ključa mora biti edinstvena za vsak zapis v bazi podatkov.

Predpostavimo, da imamo tabelo, imenovano Zaposleni, ki vsebuje podatke o osebju za vsakega zaposlenega v našem podjetju. Morali bi izbrati primeren primarni ključ, ki bi edinstveno identificiral vsakega zaposlenega. Vaša prva misel bi lahko bila uporaba imena zaposlenega. To ne bi uspelo dobro, ker je mogoče sklepati, da bi zaposlili dva zaposlena z istim imenom. Bolja izbira je lahko uporaba edinstvene ID številke zaposlencev, ki jo dodelite vsakemu zaposlenemu, ko ga najamejo. Nekatere organizacije se odločijo uporabljati številko socialnega zavarovanja (ali podobne vladne identifikatorje) za to nalogo, ker ima vsak zaposleni že eno in je zagotovljena edinstvena. Vendar je uporaba številk socialne varnosti v ta namen zelo sporna zaradi skrbi glede zasebnosti. (Če delate za vladno organizacijo, je uporaba številke socialnega zavarovanja lahko celo v skladu z Zakonom o zasebnosti iz leta 1974.) Zaradi tega se je večina organizacij preusmerila na uporabo enotnih identifikatorjev (ID delavca, ID študenta itd. .), ki ne delijo teh skrbi glede zasebnosti.

Ko se odločite za primarni ključ in nastavite bazo podatkov, bo sistem vodenja baz podatkov zagotovil edinstvenost ključa.

Če poskusite vstaviti zapis v tabelo s primarnim ključem, ki duplicira obstoječi zapis, bo vstavitev neuspešna.

Večina baz podatkov omogoča tudi generiranje lastnih primarnih ključev. Na primer, Microsoft Access je lahko konfiguriran za uporabo podatkovnega tipa AutoNumber, da vsakemu zapisu v tabeli dodeli enolični ID. Medtem ko je to učinkovito, je to slaba praksa pri oblikovanju, saj vam v vsakem zapisu v tabeli pusti nesmiselno vrednost. Zakaj ne uporabite tega prostora za shranjevanje nekaj koristnega?

Tuji ključi

Druga vrsta je tuji ključ , ki se uporablja za ustvarjanje odnosov med tabelami. V večini struktur baze podatkov obstajajo med tabelami naravni odnosi. Če se vrnemo k bazi podatkov o zaposlenih, si lahko predstavljamo, da želimo v bazo podatkov dodati tabelo, ki vsebuje podatke o oddelkih. Ta nova tabela se lahko imenuje oddelki in bi vsebovala veliko informacij o oddelku kot celoti. Prav tako bi želeli vključiti podatke o zaposlenih v oddelku, vendar bi bilo odveč, če bi imeli enake informacije v dveh tabelah (zaposleni in oddelki). Namesto tega lahko ustvarimo povezavo med dvema tabelama.

Predpostavimo, da tabela oddelkov uporablja stolpec Ime oddelka kot primarni ključ. Če želite ustvariti razmerje med dvema tabelama, v tabelo Zaposleni, imenovano oddelek, dodamo nov stolpec. Nato izpolnite ime oddelka, v katerega pripada vsak zaposleni. Sistem upravljanja podatkovne baze prav tako informiramo, da je stolpec Department v tabeli Zaposleni tuji ključ, ki se nanaša na tabelo Oddelki.

Podatkovna baza bo nato uveljavila referenčno celovitost, tako da bo zagotovila, da bodo vse vrednosti v stolpcu Oddelki v tabeli zaposlenih imele ustrezne vnose v tabeli Oddelki.

Upoštevajte, da za tuji ključ ni omejitve edinstvenosti . Morda (in najverjetneje) imamo več kot enega zaposlenega, ki pripada enemu oddelku. Podobno tudi ni potrebe, da ima vnos v tabeli Oddelki ustrezen vnos v tabeli Zaposleni. Možno je, da imamo oddelek brez zaposlenih.

Za več informacij o tej temi preberite Ustvarjanje tujih ključev .