Ensisijainen avain vs. ehdokasavain
Vaikka ensisijainen avain valitaan ehdokasavaimista, ensisijaisen avaimen ja muiden ehdokasavainten välillä on eroja, joita käsitellään yksityiskohtaisesti tässä artikkelissa. Tietokannan suunnittelu on yksi tärkeimmistä toiminnoista, joka tulee tehdä dataa ylläpidettäessä ja tallennettaessa. Tämän suunnitteluprosessin aikana on luotava erilaisia taulukoita, joissa on monia suhteita. Näihin tietokannan taulukoihin pääsemiseksi käytetään erityyppisiä avaimia nykyaikaisissa tietokantojen suunnittelukielissä, kuten MYSQL, MSAccess, SQLite jne. Näistä avaimista ehdokasavaimet ja perusavaimet ovat tulleet välttämättömiksi tietokantojen suunnittelussa.
Mikä on ehdokasavain?
Ehdokasavain on yksi sarake tai sarakejoukko tietokannan taulukossa, jonka avulla voidaan yksilöidä mikä tahansa tietokantatietue viittaamatta mihinkään muuhun tietoon. Jokaisessa tietokannan taulukossa voi olla yksi tai useampi ehdokasavain. Joukko ehdokasavaimia voidaan luoda käyttämällä toiminnallisia riippuvuuksia. Ehdokasavaimessa on joitakin tärkeitä ominaisuuksia. Ne ovat;
• ehdokasavainten tulee olla yksilöllisiä toimialueen sisällä, eivätkä ne saa sisältää NULL-arvoja.
• ehdokasavaimen ei tulisi koskaan muuttua, ja sillä on oltava sama arvo entiteetin tietylle esiintymiselle.
Ehdokasavaimen päätarkoitus on auttaa tunnistamaan yksi rivi miljoonista suuren taulukon riveistä. Jokainen ehdokasavain on pätevä ensisijaiseksi avaimeksi. Kaikista ehdokasavaimista tärkein ja erikoisin ehdokasavain tulee kuitenkin taulukon ensisijaiseksi avaimeksi ja se on paras ehdokasavainten joukossa.
Mikä on ensisijainen avain?
Ensisijainen avain on taulukon paras ehdokasavain, jota käytetään yksilöimään taulukkoon tallennetut tietueet. Kun luot uutta taulukkoa tietokantaan, meitä pyydetään valitsemaan ensisijainen avain. Siksi taulukon ensisijaisen avaimen valinta on kriittisin päätös, joka tietokannan suunnittelijan tulisi tehdä. Tärkein rajoitus, joka tulee ottaa huomioon päätettäessä ensisijaista avainta, on se, että taulukon valittu sarake saa sisältää vain yksilöllisiä arvoja, eikä se saa sisältää NULL-arvoja. Jotkut taulukoiden suunnittelussa yleisesti käytetyistä ensisijaisista avaimista ovat sosiaaliturvatunnus (SSN), henkilöllisyystodistus ja kansallisen henkilökortin numero (NIC).
Ohjelmoijan tulee muistaa valita perusavain huolellisesti, koska sitä on vaikea muuttaa. Siksi ohjelmoijien mukaan paras käytäntö ensisijaisen avaimen luomisessa on käyttää sisäisesti luotua ensisijaista avainta, kuten tietuetunnusta, joka on luotu MS Accessin AutoNumber-tietotyypin avulla. Jos yritämme lisätä tietueen taulukkoon ensisijaisella avaimella, joka kopioi olemassa olevan tietueen, lisäys epäonnistuu. Ensisijaisen avaimen arvon ei pitäisi muuttua jatkuvasti, joten on tärkeämpää säilyttää staattinen ensisijainen avain.
Ensisijainen avain on paras ehdokasavain.
Mitä eroa on ensisijaisen avaimen ja ehdokasavaimen välillä?
• Ehdokasavain on sarake, joka on yksilöllinen, kun taas ensisijainen avain on sarake, joka yksilöi tietueen.
• Taulukko ilman ehdokasavaimia ei edusta mitään relaatiota.
• Tietokannassa voi olla useita ehdokasavaimia taulukolle, mutta taulukossa saa olla vain yksi ensisijainen avain.
• Vaikka ensisijainen avain on yksi ehdokasavaimista, se on joskus ainoa ehdokasavain.
• Kun ensisijainen avain on valittu, muista ehdokasavaimista tulee yksilöllisiä avaimia.
• Käytännössä ehdokasavain voi sisältää NULL-arvoja, vaikka se ei tällä hetkellä sisällä yhtään arvoa. Siksi ehdokasavain ei ole perusavaimen kelpoisuus, koska ensisijainen avain ei saa sisältää NULL-arvoja.
• Saattaa myös olla mahdollista, että ehdokasavaimet, jotka ovat tällä hetkellä ainutlaatuisia, voivat sisältää päällekkäisiä arvoja, jotka estävät ehdokasavaimen tulemisen ensisijaiseksi avaimeksi.
Yhteenveto:
Ensisijainen avain vs. ehdokasavain
Ehdokasavain ja ensisijainen avain ovat olennaisia avaimia, joita käytetään tietokantojen suunnittelussa tietueen tietojen yksilöimiseksi ja tietokannan taulukoiden välisten suhteiden luomiseksi. Taulukon tulee sisältää vain yksi perusavain ja se voi sisältää useita ehdokasavaimia. Nykyään useimmat tietokannat pystyvät luomaan automaattisesti oman ensisijaisen avaimensa. Siksi ensisijainen avain ja ehdokasavaimet tarjoavat lukuisia tukia tietokannan hallintajärjestelmille.