Avaimet ovat yksi relaatiotietokantamallin perusvaatimuksista. Sitä käytetään laajalti taulukon monikoiden (rivien) yksilöimiseen. Käytämme myös avaimia suhteiden luomiseen relaatiotietokannan eri sarakkeiden ja taulukoiden välille.
Erityyppiset tietokanta-avaimet
- Ehdokasavain
- Pääavain
- Super avain
- Vaihtoehtoinen avain
- Vieras avain
- Komposiittiavain
Ehdokasavain
Attribuuttien vähimmäisjoukko, joka voi yksilöidä monikon, tunnetaan ehdokasavaimena. Esimerkiksi STUD_NO OPISKELIJA-suhteessa.
- Se on minimaalinen superavain.
- Sitä superavainta, jossa ei ole toistuvaa dataa, kutsutaan ehdokasavaimeksi.
- Attribuuttien vähimmäisjoukko, joka voi yksilöidä tietueen.
- Sen tulee sisältää ainutlaatuisia arvoja.
- Se voi sisältää NULL-arvoja.
- Jokaisessa taulukossa on oltava vähintään yksi ehdokasavain.
- Taulukossa voi olla useita ehdokasavaimia, mutta vain yksi ensisijainen avain.
- Ehdokasavaimen arvo on yksilöllinen ja voi olla tyhjä monikkoa varten.
- Suhteessa voi olla useampi kuin yksi ehdokasavain.
Esimerkki:
muuntaa java-objektin json-muotoon
STUD_NO is the candidate key for relation STUDENT.>
Pöytä OPISKELIJA
| STUD_NO | NAPSAHTAA | OSOITE | PUHELIN |
|---|---|---|---|
| 1 | Shyam | Delhi | 123456789 |
| 2 | Rakesh | Kolkata | 223365796 |
| 3 | Suraj | Delhi | 175468965 |
- Ehdokasavain voi olla yksinkertainen (jolla on vain yksi attribuutti) tai myös yhdistetty.
Esimerkki:
{STUD_NO, COURSE_NO} is a composite candidate key for relation STUDENT_COURSE.> Taulukko STUDENT_COURSE
| STUD_NO | OPETTAJA_NO | COURSE_NO |
|---|---|---|
| 1 | 001 | C001 |
| 2 | 056 | C005 |
Huomautus: Sisään SQL Palvele yksilöllinen rajoitus, jolla on tyhjennettävä sarake, sallii arvo ' tyhjä ' tuossa sarakkeessa vain kerran . Tästä syystä STUD_PHONE-attribuutti on ehdokas tässä, mutta se ei voi olla 'nolla'-arvo ensisijaisen avaimen attribuutissa.
Pääavain
Ehdokasavaimia voi olla useampi kuin yksi, joista yksi voidaan valita ensisijaiseksi avaimeksi. Esimerkiksi STUD_NO sekä STUD_PHONE ovat ehdokasavaimia suhteelle STUDENT, mutta STUD_NO voidaan valita pääavain (vain yksi monista ehdokasavaimista).
np.zeros
- Se on ainutlaatuinen avain.
- Se voi tunnistaa vain yhden monikon (tietueen) kerrallaan.
- Sillä ei ole päällekkäisiä arvoja, sillä on ainutlaatuiset arvot.
- Se ei voi olla NULL.
- Ensisijaisten avainten ei välttämättä tarvitse olla yksi sarake; useampi kuin yksi sarake voi olla myös taulukon ensisijainen avain.
Esimerkki:
STUDENT table ->Opiskelija (STUD_NO, SNAME, ADDRESS, PHONE) , STUD_NO on ensisijainen avain>>Pöytä OPISKELIJA
| STUD_NO | NAPSAHTAA | OSOITE | PUHELIN |
|---|---|---|---|
| 1 | Shyam | Delhi | 123456789 |
| 2 | Rakesh | Kolkata | 223365796 |
| 3 | Suraj | Delhi | 175468965 |
Super avain
Attribuuttijoukko, joka voi yksilöidä monikon, tunnetaan nimellä Super Key. Esimerkiksi STUD_NO, (STUD_NO, STUD_NAME) jne. Superavain on yksittäisten tai useiden avainten ryhmä, joka identifioi taulukon rivit. Se tukee NULL-arvoja.
- Nollan tai useamman attribuutin lisääminen ehdokasavaimeen luo superavaimen.
- Ehdokasavain on superavain, mutta päinvastoin ei pidä paikkaansa.
- Super Key -arvot voivat myös olla NULL.
Esimerkki:
Ensisijaisen avaimen, ehdokasavaimen ja superavaimen välinen suhde
Vaihtoehtoinen avain
Muuta ehdokasavainta kuin ensisijaista avainta kutsutaan an vaihtoehtoinen avain .
- Kaikkia avaimia, jotka eivät ole ensisijaisia avaimia, kutsutaan vaihtoehtoisiksi avaimiksi.
- Se on toissijainen avain.
- Se sisältää kaksi tai useampia kenttiä kahden tai useamman tietueen tunnistamiseksi.
- Nämä arvot toistetaan.
- Esim:- SNAME ja ADDRESS ovat vaihtoehtoisia avaimia
Esimerkki:
Consider the table shown above. STUD_NO, as well as PHONE both, are candidate keys for relation STUDENT but PHONE will be an alternate key (only one out of many candidate keys).>

Ensisijainen avain, ehdokasavain ja vaihtoehtoinen avain
Vieras avain
Jos attribuutti voi ottaa vain ne arvot, jotka ovat olemassa jonkin muun attribuutin arvoina, se on a vieras avain attribuutille, johon se viittaa. Relaatiota, johon viitataan, kutsutaan viitatuksi suhteeksi ja vastaavaa attribuuttia kutsutaan refered-attribuutiksi. Viitatun suhteen viitatun attribuutin tulee olla sen ensisijainen avain.
- Se on avain, joka toimii ensisijaisena avaimena yhdessä taulukossa ja toimii
toissijainen avain toisessa taulukossa. - Se yhdistää kaksi tai useampia relaatioita (taulukkoja) kerrallaan.
- Ne toimivat ristiviittauksina taulukoiden välillä.
- Esimerkiksi DNO on ensisijainen avain DEPT-taulukossa ja ei-avain EMP:ssä
Esimerkki:
kuinka monta viikkoa kuukaudessa
Refer Table STUDENT shown above. STUD_NO in STUDENT_COURSE is a foreign key to STUD_NO in STUDENT relation.>
Taulukko STUDENT_COURSE
| STUD_NO | OPETTAJA_NO | COURSE_NO |
|---|---|---|
| 1 | 005 | C001 |
| 2 | 056 | C005 |
Saattaa olla syytä huomata, että toisin kuin minkä tahansa tietyn suhteen ensisijainen avain, vieras avain voi olla NULL sekä se voi sisältää kaksoiskappaleita, eli sen ei tarvitse noudattaa ainutlaatuisuusrajoitusta. Esimerkiksi STUD_NO suhteessa STUDENT_COURSE ei ole ainutlaatuinen. Se on toistettu ensimmäiselle ja kolmannelle riville. STUDENT-relaation STUD_NO on kuitenkin ensisijainen avain ja sen on oltava aina yksilöllinen, eikä se voi olla tyhjä.

Ensisijaisen avaimen ja vieraan avaimen välinen suhde
Komposiittiavain
Joskus taulukossa ei ehkä ole yhtä saraketta/attribuuttia, joka yksilöi kaikki taulukon tietueet. Taulukon rivien yksilöimiseksi voidaan käyttää kahden tai useamman sarakkeen/määritteen yhdistelmää. Se voi silti antaa päällekkäisiä arvoja harvoissa tapauksissa. Joten meidän on löydettävä optimaalinen attribuuttijoukko, joka voi yksilöidä taulukon rivit.
- Se toimii ensisijaisena avaimena, jos taulukossa ei ole ensisijaista avainta
- Kahta tai useampaa attribuuttia käytetään yhdessä a komposiittiavain .
- Eri attribuuttien yhdistelmät voivat antaa erilaisen tarkkuuden rivien yksilöimisessä.
Esimerkki:
mylivecriclet
FULLNAME + DOB can be combined together to access the details of a student.>

Erityyppiset avaimet
Johtopäätös
Yhteenvetona voidaan todeta, että relaatiomallissa käytetään useita avaimia: ehdokasavaimet mahdollistavat erillisen tunnistamisen, ensisijainen avain toimii valittuna tunnisteena, vaihtoehtoiset avaimet tarjoavat muita vaihtoehtoja ja vieraat avaimet luovat tärkeitä yhteyksiä, jotka takaavat tietojen eheyden taulukoiden välillä. Vahvojen ja tehokkaiden relaatiotietokantojen luominen edellyttää näiden avainten harkittua käyttöä.
Usein kysytyt kysymykset avaintyypeistä relaatiomallissa
K.1: Miksi avaimia tarvitaan DBMS:lle?
Vastaus:
Avaimet ovat yksi DBMS:n tärkeistä osista. Näppäimet auttavat meitä löytämään monikot (rivit) yksilöllisesti taulukosta. Sitä käytetään myös erilaisten suhteiden kehittämiseen tietokannan sarakkeiden tai taulukoiden välillä.
K.2: Mikä on yksilöllinen avain?
Vastaus:
Yksilölliset avaimet ovat avaimia, jotka määrittävät tietueen yksilöllisesti taulukossa. Se eroaa ensisijaisista avaimista, koska yksilöllinen avain voi sisältää yhden NULL-arvon, mutta ensisijainen avain ei sisällä NULL-arvoja.
K.3: Mikä on keinotekoinen avain?
Vastaus:
Keinotekoiset avaimet ovat avaimia, joita käytetään, kun mikään attribuutti ei sisällä kaikkia ensisijaisen avaimen ominaisuuksia tai jos ensisijainen avain on erittäin suuri ja monimutkainen.