Ensisijainen avain vs. ehdokasavain
Vaikka ensisijainen avain on valittu ehdokasavaimista, ensisijaisen avaimen ja muiden ehdokasavainten välillä on jonkin verran eroja, joista keskustellaan yksityiskohtaisesti tässä artikkelissa. Tietokannan suunnittelu on yksi tärkeimmistä tehtävistä, jotka tulisi tehdä ylläpidettäessä ja tallennettaessa tietoja. Tämän suunnitteluprosessin aikana on luotava erilaisia taulukoita, joissa on useita suhteita. Näihin taulukoihin pääsemiseksi tietokannassa käytetään erityyppisiä avaimia nykyaikaisissa tietokannan suunnittelukielissä, kuten MYSQL, MSAccess, SQLite jne. Näistä avaimista ehdokasavaimet ja ensisijaiset avaimet ovat tulleet välttämättömiksi tietokannan suunnittelukäytännöissä.
Mikä on ehdokasavain?
Ehdokasavain on yksi sarake tai sarakeryhmä tietokannan taulukossa, jota voidaan käyttää kaikkien tietokantatietueiden yksilöimiseen viittaamatta muihin tietoihin. Jokaisessa tietokannan taulukossa voi olla yksi tai useampi kuin yksi ehdokasavain. Joukko ehdokasavaimia voidaan luoda käyttämällä toiminnallisia riippuvuuksia. Ehdokasavaimessa on joitain tärkeitä ominaisuuksia. He ovat;
• ehdokasavainten tulee olla yksilöllisiä toimialueella, eivätkä ne saa sisältää NULL-arvoja.
• ehdokasavaimen ei pitäisi koskaan muuttua, ja sillä on oltava sama arvo tietyn entiteetin esiintymän kohdalla.
Ehdokasavaimen päätarkoitus on auttaa tunnistamaan yksi rivi miljoonasta rivistä isossa taulukossa. Jokainen ehdokasavain on pätevä tulemaan ensisijaiseksi avaimeksi. Kaikista ehdokasavaimista tärkeimmistä ja erityisistä ehdokkaista avaimista tulee kuitenkin taulukon ensisijainen avain, ja se on paras ehdokasavaimista.
Mikä on ensisijainen avain?
Ensisijainen avain on taulukon paras ehdokasavain, jota käytetään yksilöimään taulukkoon tallennetut tietueet. Kun luot uuden taulukon tietokantaan, meitä pyydetään valitsemaan ensisijainen avain. Siksi taulukon ensisijaisen avaimen valinta on kriittisin päätös, jonka tietokannan suunnittelijan tulisi tehdä. Tärkein rajoitus, joka on otettava huomioon päätettäessä ensisijaista avainta, on se, että taulukon valitun sarakkeen tulisi sisältää vain yksilöllisiä arvoja eikä siinä saa olla mitään NULL-arvoja. Jotkut ensisijaisista avaimista, joita yleisesti käytetään taulukoiden suunnittelussa, ovat sosiaaliturvatunnus (SSN), henkilötodistus ja kansallinen henkilökortin numero (NIC).
Ohjelmoijan tulee muistaa valita ensisijainen avain 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 MS Access -tietotyypin luoma tietuetunnus. 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ää pitää staattinen ensisijainen avain.
Ensisijainen avain on paras ehdokasavain.
Mikä on ero ensisijaisen avaimen ja ehdokasavaimen välillä?
• Ehdokasavain on sarake, joka täsmää ainutlaatuiseksi, kun taas ensisijainen avain on sarake, joka yksilöi tietueen.
• Taulukko ilman ehdokasavaimia ei edusta mitään suhdetta.
• Tietokannassa voi olla useita taulukkoehdokkaan avaimia, mutta taulukolle saa olla vain yksi ensisijainen avain.
• Vaikka ensisijainen avain on yksi ehdokasavaimista, joskus se on 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ä mitään arvoa. Siksi ehdokasavain ei ole kelvollinen ensisijaiseen avaimeen, koska ensisijainen avain ei saisi sisältää mitään NULL-arvoja.
• Voi myös olla mahdollista, että ehdokasavaimet, jotka ovat tällä hetkellä ainutlaatuisia, voivat sisältää päällekkäisiä arvoja, jotka estävät ehdokasavainta tulemasta ensisijaiseksi avaimeksi.
Yhteenveto:
Ensisijainen avain vs. ehdokasavain
Ehdokasavain ja ensisijainen avain ovat välttämättömiä avaimia, joita käytetään tietokantojen suunnittelussa, jotta tietue voidaan yksilöidä yksilöllisesti ja luoda yhteyksiä tietokannan taulukoihin. Taulukossa tulisi olla vain yksi ensisijainen avain ja se voi sisältää useita ehdokkaita. Nykyään useimmat tietokannat pystyvät automaattisesti luomaan oman ensisijaisen avaimen. Siksi ensisijainen avain ja ehdokasavaimet tarjoavat lukuisen tuen tietokannan hallintajärjestelmille.
Kuvat Kohteliaisuus: