logo

Typer nøkler i relasjonsmodellen (kandidat, super, primær, alternativ og utenlandsk)

Nøkler er et av de grunnleggende kravene til en relasjonsdatabasemodell. Det er mye brukt for å identifisere tuplene (radene) unikt i tabellen. Vi bruker også nøkler til å sette opp relasjoner mellom ulike kolonner og tabeller i en relasjonsdatabase.

Ulike typer databasenøkler

  • Kandidatnøkkel
  • Primærnøkkel
  • Supernøkkel
  • Alternativ nøkkel
  • Utenlandsk nøkkel
  • Sammensatt nøkkel

Kandidatnøkkel

Det minimale settet med attributter som unikt kan identifisere en tuppel er kjent som en kandidatnøkkel. For eksempel STUD_NO i STUDENT-relasjon.



  • Det er en minimal supernøkkel.
  • Det er en supernøkkel uten gjentatte data kalles en kandidatnøkkel.
  • Det minimale settet med attributter som unikt kan identifisere en post.
  • Den må inneholde unike verdier.
  • Den kan inneholde NULL-verdier.
  • Hver tabell må ha minst én enkelt kandidatnøkkel.
  • En tabell kan ha flere kandidatnøkler, men bare én primærnøkkel.
  • Verdien av kandidatnøkkelen er unik og kan være null for en tuppel.
  • Det kan være mer enn én kandidatnøkkel i et forhold.

Eksempel:

np.histogram
 STUD_NO is the candidate key for relation STUDENT.>

Tabell STUDENT

STUD_NR SNAP ADRESSE TELEFON
1 Shyam Delhi 123456789
2 Rakesh Kolkata 223365796
3 Suraj Delhi 175468965
  • Kandidatnøkkelen kan også være enkel (med bare ett attributt) eller sammensatt.

Eksempel:



 {STUD_NO, COURSE_NO} is a composite   candidate key for relation STUDENT_COURSE.>

Tabell STUDENT_COURSE

STUD_NR LÆRER_NR COURSE_NO
1 001 C001
2 056 C005

Merk: I SQL Server en unik begrensning som har en nullbar kolonne, muliggjør verdien ' null «i den kolonnen bare én gang . Det er derfor STUD_PHONE-attributtet er en kandidat her, men kan ikke være en 'null'-verdi i primærnøkkelattributtet.

Primærnøkkel

Det kan være mer enn én kandidatnøkkel i forhold hvorav én kan velges som primærnøkkel. For eksempel er STUD_NO, så vel som STUD_PHONE, kandidatnøkler for relasjonen STUDENT, men STUD_NO kan velges som primærnøkkel (kun én av mange kandidatnøkler).



  • Det er en unik nøkkel.
  • Den kan bare identifisere én tuppel (en post) om gangen.
  • Den har ingen dupliserte verdier, den har unike verdier.
  • Det kan ikke være NULL.
  • Primærnøkler skal ikke nødvendigvis være en enkelt kolonne; mer enn én kolonne kan også være en primærnøkkel for en tabell.

Eksempel:

STUDENT table ->Student(STUD_NO, SNAME, ADDRESS, PHONE) , STUD_NO er ​​en primærnøkkel>

Tabell STUDENT

STUD_NR SNAP ADRESSE TELEFON
1 Shyam Delhi 123456789
2 Rakesh Kolkata 223365796
3 Suraj Delhi 175468965

Supernøkkel

Settet med attributter som unikt kan identifisere en tuppel er kjent som Super Key. For eksempel STUD_NO, (STUD_NO, STUD_NAME), etc. En supernøkkel er en gruppe med enkelt eller flere nøkler som identifiserer rader i en tabell. Den støtter NULL-verdier.

  • Hvis du legger til null eller flere attributter til kandidatnøkkelen, genereres supernøkkelen.
  • En kandidatnøkkel er en supernøkkel, men omvendt er det ikke sant.
  • Supernøkkelverdier kan også være NULL.

Eksempel:

Consider the table shown above. STUD_NO+PHONE is a super key  .>
Forholdet mellom primærnøkkel, kandidatnøkkel og supernøkkel

Forholdet mellom primærnøkkel, kandidatnøkkel og supernøkkel

streng som en matrise

Alternativ nøkkel

Den andre kandidatnøkkelen enn primærnøkkelen kalles en alternativ nøkkel .

  • Alle nøklene som ikke er primærnøkler kalles alternative nøkler.
  • Det er en sekundær nøkkel.
  • Den inneholder to eller flere felt for å identifisere to eller flere poster.
  • Disse verdiene gjentas.
  • F.eks:- SNAME og ADRESSE er alternative nøkler

Eksempel:

strengbygger java
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).>
Primærnøkkel, kandidatnøkkel og alternativnøkkel

Primærnøkkel, kandidatnøkkel og alternativnøkkel

Utenlandsk nøkkel

Hvis et attributt bare kan ta verdiene som er tilstede som verdier for et annet attributt, vil det være en fremmednøkkel til egenskapen den refererer til. Relasjonen som det refereres til kalles referert relasjon og det tilsvarende attributtet kalles referert attributt. Det refererte attributtet til den refererte relasjonen skal være primærnøkkelen til den.

  • Det er en nøkkel den fungerer som en primærnøkkel i en tabell, og den fungerer som
    sekundærnøkkel i en annen tabell.
  • Den kombinerer to eller flere relasjoner (tabeller) om gangen.
  • De fungerer som en kryssreferanse mellom tabellene.
  • For eksempel er DNO en primærnøkkel i DEPT-tabellen og en ikke-nøkkel i EMP

Eksempel:

 Refer Table STUDENT shown above.  STUD_NO in STUDENT_COURSE is a   foreign key to STUD_NO in STUDENT relation.>

Tabell STUDENT_COURSE

STUD_NR LÆRER_NR COURSE_NO
1 005 C001
2 056 C005

Det kan være verdt å merke seg at, i motsetning til primærnøkkelen til en gitt relasjon, kan fremmednøkkel være NULL i tillegg til å inneholde dupliserte tupler, dvs. at den ikke trenger å følge unikhetsbegrensningen. For eksempel er STUD_NO i STUDENT_COURSE-relasjonen ikke unik. Det har blitt gjentatt for første og tredje tuppel. STUD_NO i STUDENT-relasjonen er imidlertid en primærnøkkel, og den må alltid være unik, og den kan ikke være null.

Forholdet mellom primærnøkkel og fremmednøkkel

Forholdet mellom primærnøkkel og fremmednøkkel

Sammensatt nøkkel

Noen ganger kan det hende at en tabell ikke har en enkelt kolonne/attributt som unikt identifiserer alle postene i en tabell. For å identifisere rader i en tabell unikt, kan en kombinasjon av to eller flere kolonner/attributter brukes. Det kan fortsatt gi dupliserte verdier i sjeldne tilfeller. Så vi må finne det optimale settet med attributter som unikt kan identifisere rader i en tabell.

  • Den fungerer som en primærnøkkel hvis det ikke er noen primærnøkkel i en tabell
  • To eller flere attributter brukes sammen for å lage en sammensatt nøkkel .
  • Ulike kombinasjoner av attributter kan gi ulik nøyaktighet når det gjelder å identifisere radene unikt.

Eksempel:

FULLNAME + DOB can be combined  together to access the details of a student.>
Ulike typer nøkler

Ulike typer nøkler

Konklusjon

Avslutningsvis bruker relasjonsmodellen en rekke nøkler: Kandidatnøkler tillater distinkt identifikasjon, primærnøkkelen fungerer som den valgte identifikatoren, alternative nøkler tilbyr andre valg, og fremmednøkler skaper viktige koblinger som garanterer dataintegritet mellom tabeller. Opprettelsen av sterke og effektive relasjonsdatabaser krever gjennomtenkt bruk av disse nøklene.

Vanlige spørsmål om typer nøkler i relasjonsmodellen

Q.1: Hvorfor er nøkler nødvendig for DBMS?

Svar:

Nøkler er en av de viktige aspektene ved DBMS. Taster hjelper oss å finne tuplene(radene) unikt i tabellen. Den brukes også til å utvikle ulike relasjoner mellom kolonner eller tabeller i databasen.

Q.2: Hva er en unik nøkkel?

Svar:

kart vs sett

Unike nøkler er nøklene som definerer posten unikt i tabellen. Den er forskjellig fra primærnøkler, siden Unique Key kan inneholde én NULL-verdi, men primærnøkkelen ikke inneholder noen NULL-verdier.

Q.3: Hva er kunstig nøkkel?

Svar:

Kunstige nøkler er nøklene som brukes når ingen attributter inneholder alle egenskapene til primærnøkkelen eller hvis primærnøkkelen er veldig stor og kompleks.