Kas yra raktinis laukas?

Rakto laukas yra duomenų bazės stulpelis arba stulpelių derinys, unikaliai identifikuojantis konkretų nagrinėjamą įrašą. Šie laukai naudojami kelių duomenų bazės lentelių vientisumui nustatyti ir užtikrinti. Šie laukai yra dviejų tipų: paprasti ir sudėtiniai raktai, atsižvelgiant į stulpelių, pažymėtų kaip rakto laukas, skaičių. Kai naudojamas pradinėje lentelėje, šis laukas žinomas kaip „pirminis“ raktas; kai naudojamas kitoje lentelėje kaip lentelių susiejimo metodas, jis žinomas kaip „svetimas“ raktas.

Kad būtų naudingas kaip pagrindinis laukas, pagrindinis kandidatas turi būti unikalus, nekeičiamas ir reikalingas. Unikalumą lengva suprasti; tai reiškia, kad joks kitas duomenų bazės įrašas negali turėti tokios rakto reikšmės kaip bet kuris kitas įrašas. Nekeičiama reiškia, kad rakto vertės informacija yra fiksuota ir nekintanti, kad laikui bėgant ji niekada nepasikeis. Reikalingas reiškia, kad jei duomenų bazėje nėra įrašo, rakto reikšmė gali būti palikta tuščia. Pavyzdžiui, neprivaloma kategorija, pvz., rasė ar tautybė, negali būti naudojama kaip pagrindinis laukas darbuotojų duomenų bazėje, nes kai kurie darbuotojai gali nenorėti pateikti šios informacijos.

Pasirinkus tinkamus raktų laukus, duomenų bazė gali išlaikyti vientisumą ir išlikti nuosekli tarp lentelių. Pavyzdžiui, jei duomenų bazėje pateikiami darbuotojų įrašai, įprastame įraše gali būti darbuotojo vardas, pavardė, gimimo data ir socialinio draudimo arba darbuotojo ID numeris. Akivaizdus pagrindinės srities pasirinkimas yra socialinio draudimo arba darbuotojo ID numeris; abu šie atitiktų unikalumo, nekeičiamo ir reikalaujamo reikalavimus. Bandant ieškoti konkretaus darbuotojo įrašo duomenų bazėje, įvedus numerį iš karto būtų pateikiamas ne daugiau kaip vienas darbuotojo įrašas. Jei kaip rakto lauką naudosite darbuotojo pavardę, gali būti, kad bus rasti keli darbuotojo įrašai, nes daugiau nei vienas darbuotojas gali bendrinti pavardę.

Vienas iš būdų sumažinti tikimybę netyčia pasirinkti rakto lauką, kuriame yra galimybė grąžinti kelis įrašus, yra naudoti sudėtinį raktą. Priešingai nei paprastas raktas, kuris naudoja tik vieną stulpelį, sudėtinis raktas naudoja kelių stulpelių derinį, kad pavaizduotų rakto laukus. Pavyzdžiui, naudojant kaip raktą darbuotojo vardo, pavardės ir gimimo datos derinį, labai sumažėtų (bet ne visiškai) tikimybė pažeisti unikalumo reikalavimą. Tai yra sprendimas, kai geras paprastas raktas nėra lengvai pasiekiamas.