Primaire sleutel versus buitenlandse sleutel: verschil en vergelijking

Databasebeheersysteem (DBMS) is essentieel in het bedrijfsleven, het bankwezen, luchtvaartmaatschappijen, telecommunicatie en universiteiten omdat het een efficiënte en betrouwbare methode is voor het maken, opslaan en beheren van databasegegevens. Relationeel Database Management Systeem (RDBMS) is de geavanceerde vorm van DMBS, speciaal gestructureerd voor relationele databases.

Sleutels zijn essentiële onderdelen van het relationele databaseschema omdat ze een koppeling tot stand brengen tussen twee verschillende tabellen en elke rij gegevens binnen een tabel op unieke wijze identificeren. Sleutels hebben echter een specifieker belang dan alleen het onderhouden van koppelingen.

Het helpt bij het verzamelen van specifieke gegevens uit talloze rijen, wat ingewikkeld of zelfs onmogelijk zou zijn geweest als er geen sleutels waren. De twee primaire sleutels die helpen om efficiënt koppelingen tussen relationele databases tot stand te brengen en te identificeren, zijn primaire sleutels en externe sleutels.

Key Takeaways

  1. Een primaire sleutel is een unieke identificatie voor elk record in een databasetabel, zodat geen twee rijen dezelfde primaire sleutelwaarde hebben.
  2. Een externe sleutel is een veld in een tabel dat verwijst naar de primaire sleutel van een andere tabel, waardoor een relatie tussen de twee tabellen tot stand wordt gebracht en de referentiële integriteit behouden blijft.
  3. Het belangrijkste verschil tussen primaire sleutels en externe sleutels is hun functie binnen een database, waarbij primaire sleutels een unieke identificatie voor records bieden. Externe sleutels creëren daarentegen relaties tussen tabellen door te verwijzen naar primaire sleutels in andere tabellen.

Primaire sleutel versus buitenlandse sleutel

Een primaire sleutel is een keuze uit kolommen die uniek is en de reeks rijen in een bepaalde tabel bepaalt, en ook een attribuut dat een ID heeft dat wordt gezien als een kandidaatsleutel. Vreemde sleutel is een kolom in een tabel die dient als koppeling tussen twee verschillende tabellen en die null-waarden bevat.

Primaire sleutel versus buitenlandse sleutel 2

Een tabel kan geen relationele tabel zijn databank tabel zonder de primaire sleutel. Omdat primaire sleutels op unieke wijze een specifieke rij met gegevens identificeren, kunnen twee of meer rijen geen vergelijkbare primaire sleutels hebben. Daarentegen worden externe sleutels gebruikt om een ​​relatie tot stand te brengen tussen de records van twee verschillende tabellen.

Lees ook:  Snel sorteren versus samenvoegen: verschil en vergelijking

 

Vergelijkingstabel

Parameter van vergelijkingHoofdsleutelVreemde sleutel
Dubbele waardenPrimaire sleutels staan ​​niet toe dat twee rijen dezelfde waarden hebben.Vreemde sleutels zorgen ervoor dat de twee rijen dezelfde waarden hebben.
InvoegingIn primaire sleutels kan men waarden invoegen, zelfs als de externe sleutel die waarde niet heeft.In externe sleutels kan men geen waarden invoegen als de waarden niet aanwezig zijn in de primaire sleutel.
RANGEElke rij in de relationele databasetabel kan slechts één primaire sleutel hebben.Een relationele databasetabel kan meerdere externe sleutels hebben.
Geclusterde indexPrimaire sleutels hebben standaard een geclusterde index.Externe sleutels hebben geen geclusterde index.
verwijderingWanneer een waarde moet worden verwijderd, moet men ervoor zorgen dat de waarde nog steeds niet aanwezig is in de verwijzingstabel naar externe sleutels.Wanneer een waarde moet worden verwijderd, kan dit eenvoudig met vreemde sleutels worden gedaan.
Tijdelijke tafelsPrimaire sleutels kunnen worden gedefinieerd op een tijdelijke tabel.Vreemde sleutels kunnen niet worden gedefinieerd op een tijdelijke tabel.

 

Wat is primaire sleutel?

Een primaire sleutel verwijst naar een bepaalde keuze van kolommen die op unieke wijze de reeks rijen in een tabel bepaalt. Een primaire sleutel is een enkel attribuut met een unieke ID en wordt ook beschouwd als een kandidaatsleutel.

De waarde van een primaire sleutel mag nooit fluctueren of worden gewijzigd omdat de primaire sleutel het belang in de databank. Het wijzigen van de waarde zou dus tot veel verwarring leiden.

De primaire sleutel is cluster-geïndexeerd, wat betekent dat alle tabelrijen zijn gesorteerd. De primaire sleutel wordt voornamelijk gedefinieerd op een tijdelijke tabel.

hoofdsleutel
 

Wat is buitenlandse sleutel?

Een externe sleutel verwijst naar een kolom in een databasetabel die een koppeling vormt tussen twee tabellen. Als tabel 1 een primaire sleutel heeft van tabel 2, is dit attribuut de externe sleutel.

In tegenstelling tot primaire sleutels kunnen externe sleutels null-waarden bevatten, omdat dit niet helpt bij het identificeren van een verschil in de relatie omdat primaire sleutels dit deel van het werk al hebben gedaan. Externe sleutels kunnen ook dubbele waarden accepteren, in tegenstelling tot de primaire sleutel, en kunnen veel of meerdere externe sleutels in een database hebben, aangezien externe sleutels verschillende attributen kunnen hebben.

Lees ook:  MVC1 versus MVC2: verschil en vergelijking

Vreemde sleutels kunnen niet worden gedefinieerd op een tijdelijke tabel. Bij het toevoegen van een waarde aan de kolom met externe sleutels moet men ervoor zorgen dat de deal aanwezig is in de primaire sleutel en dat er geen beperking is bij het verwijderen van waarden uit een externe sleutel.

vreemde sleutel

Belangrijkste verschillen tussen primaire sleutel en buitenlandse sleutel

  1. Primaire sleutels sta niet toe dat twee rijen in een databasetabel dubbele waarden hebben. Vreemde sleutels toestaan ​​dat twee rijen in een databasetabel dubbele waarden hebben.
  2. In het attribuut van de primaire sleutels, kunnen waarden in de tabel worden ingevoegd, zelfs als de externe sleutel die waarde niet in de kolom heeft. In de buitenlandse sleutels attribuut, kortingen kunnen niet in de tabel worden ingevoegd als de waarden niet in de primaire sleuteldatabase staan.
  3. A hoofdsleutel attribuut kan slechts één reeks primaire sleutels in zijn tabel hebben. EEN vreemde sleutel attribuut kan veel externe sleutels in zijn tabel hebben.
  4. Primaire sleutels hebben een geclusterde index, wat betekent dat alle rijen in de databaserelatie zijn gesorteerd. Vreemde sleutels hebben geen automatische geclusterde index, maar kunnen handmatig worden gedaan.
  5. Onder primaire sleutels, kan een waarde uit de referentietabel worden verwijderd door ervoor te zorgen dat de deal niet aanwezig is in de referentietabel voor externe sleutels. Onder externe sleutels kunnen de waarden probleemloos worden verwijderd, omdat het niet uitmaakt of de waarde nog actueel is in de referentietabel van de primaire sleutels.
  6. Primaire sleutels kan worden bepaald op een tijdelijke tafel. Vreemde sleutels kan niet worden bepaald of afgedwongen op een tijdelijke tafel.

Referenties
  1. https://dl.acm.org/doi/abs/10.14778/1920841.1920944?casa_token=HgKaHPnYA9oAAAAA:_NYpWs4jzN-BI4lT9bWA73EPTvOBtYxJzXB7RpKVXGvZRc0htXpsv742IQMGSsjiuA1f_E_80IN18O0
  2. https://ieeexplore.ieee.org/abstract/document/994756/

Laatst bijgewerkt: 11 juni 2023

stip 1
Een verzoek?

Ik heb zoveel moeite gestoken in het schrijven van deze blogpost om jou van waarde te kunnen zijn. Het zal erg nuttig voor mij zijn, als je overweegt het te delen op sociale media of met je vrienden/familie. DELEN IS ️

10 gedachten over “Primaire sleutel versus buitenlandse sleutel: verschil en vergelijking”

  1. Vooral de vergelijkingstabel is nuttig. Het biedt een duidelijke en beknopte samenvatting van de contrasterende kenmerken van primaire sleutels en externe sleutels.

    Antwoorden
  2. Dit artikel mist een diepgaande uitleg van primaire en externe sleutels. Het slaagt er niet in om bepaalde geavanceerde databasequerybewerkingen waarbij deze sleutels betrokken zijn, aan te pakken.

    Antwoorden
  3. Ik zie dat het artikel er goed in slaagt vast te stellen dat primaire sleutels uniekheid in een databasetabel garanderen door geen dubbele waarden toe te staan.

    Antwoorden
  4. De auteur zou zich kunnen verdiepen in een uitgebreidere analyse van de specifieke toepassingen van primaire en externe sleutels in verschillende industriële omgevingen.

    Antwoorden
  5. Ben ik het niet mee eens. Een databasetabel kan een relationele databasetabel zijn zonder de primaire sleutel. Het wordt beschouwd als een slechte praktijk, maar niet onmogelijk.

    Antwoorden
  6. De auteur doet slecht werk in het begrijpen van de rol van primaire sleutels. Het feit dat hun waarden niet veranderd mogen worden, is volkomen verkeerd. Ze kunnen indien nodig worden bijgewerkt.

    Antwoorden
  7. In dit artikel wordt het belang van de primaire sleutel en de externe sleutel in een DBMS goed uitgelegd. Dit zijn onmisbare componenten van de databasearchitectuur die de betrouwbaarheid van gegevens garanderen.

    Antwoorden
  8. De auteur doet geweldig werk door de verschillen tussen primaire sleutels en externe sleutels en hun betekenis binnen een database te benadrukken. Erg informatief.

    Antwoorden
  9. Databasebeheersystemen zijn het levensbloed van organisaties. Ze helpen bij het organiseren en leveren van cruciale gegevens op een efficiënte en betrouwbare manier.

    Antwoorden

Laat een bericht achter

Dit artikel bewaren voor later? Klik op het hartje rechtsonder om op te slaan in je eigen artikelenbox!