Verschil tussen primaire sleutel en unieke sleutel

De primaire sleutel en de unieke sleutel zijn allebei unieke sleutels in een relationele database die de uniekheid van de waarden op een kolom of een reeks kolommen garanderen. Er is al een vooraf gedefinieerde unieke sleutelbeperking binnen een primaire sleutelbeperking. Hoewel een primaire sleutel met name wordt gebruikt om elke record in de tabel te identificeren, wordt een unieke sleutel aan de andere kant gebruikt om dubbele vermeldingen in een kolom te voorkomen, met uitzondering van een null-item. Beide sleutels kunnen echter meer dan één kolom uit een gegeven tabel bevatten en beide spelen een cruciale rol bij het opslaan en ophalen van gegevens. De gegevens zijn een reeks tabellen met kolommen en deze kolommen slaan informatie op van alle typen die verder kunnen worden geopend of opgehaald met behulp van instructies. Hier komen de toetsen naar de foto. Primaire sleutel en unieke sleutel zijn twee unieke sleutels die bepalen hoe de gegevens in het systeem moeten worden opgeslagen.

Hoofdsleutel

Een primaire sleutel (ook geldig voor primair trefwoord), is een unieke sleutel in een relationele database die elke record in een databasetabel identificeert. Het is een soort uniek identificatiemiddel, zoals een sofinummer, telefoonnummer, rijbewijsnummer of kenteken van een voertuig. Een database moet slechts één primaire sleutel hebben.

Een tabel in een database bevat een kolom of een reeks kolommen met waarden die elke rij in de tabel uniek identificeren. Deze kolom of een reeks kolommen wordt de primaire sleutel van de tabel genoemd die unieke waarden moet bevatten en mag geen null-waarden bevatten. Zonder een primaire sleutel werkt de relationele database niet.

Een primaire sleutel wordt gemaakt door een PRIMAIRE TOETS-voorwaarde te definiëren bij het maken of wijzigen van een tabel. In de SQL-standaard kan een primaire sleutel één of meerdere kolommen bevatten, terwijl elke kolom impliciet is gedefinieerd als NOT NULL. Als u een PRIMAIRE KEY-beperking op meer dan één kolom definieert, kan dit resulteren in duplicatie van waarden binnen één kolom, daarom moet elke combinatie van waarden uniek zijn voor alle kolommen.

Een primaire sleutel heeft de volgende functies:

  • Elke tabel moet één en slechts één primaire sleutel bevatten, niet meer dan één primaire sleutel.
  • Een primaire sleutel mag geen NULL-waarden bevatten.
  • Het kan uit een of meer kolommen bestaan.
  • Alle kolommen moeten worden gedefinieerd als NOT NULL.
  • Een primaire sleutel is standaard een geclusterde unieke index.

Unieke sleutel

Een unieke sleutel is een set van één of meer dan één kolom / veld van een tabel die een record in een databasetabel uniek identificeert. De UNIQUE KEY-voorwaarde zorgt ervoor dat alle waarden in een kolom uniek zijn in de database. Net als een primaire sleutel kan een unieke sleutel ook uit meer dan één kolom bestaan. Een unieke sleutel kan echter slechts één nulwaarde accepteren. Geen twee rijen hebben dezelfde waarden in een databasetabel.

Een unieke sleutel lijkt veel op een primaire sleutel en kan worden gedefinieerd tijdens het maken van de tabel. Wanneer een kolom of een reeks kolommen als uniek is gemarkeerd in het relationele gegevensbanksysteem, wordt vóór het toewijzen van de beperking gecontroleerd of de waarden intact zijn, zodat wordt voorkomen dat twee records identieke waarden in een bepaalde kolom hebben.

UNIEK is een beperking voor een niet-PRIMAIRE SLEUTELkolom die het volgende kenmerkt:

  • Een UNIQUE KEY-beperking garandeert het unieke karakter van de waarden.
  • Meerdere unieke sleutels kunnen op een tafel worden gedefinieerd.
  • Een kolom kan een NULL-waarde bevatten, maar slechts één NULL-waarde per kolom is toegestaan.
  • Een unieke sleutel kan standaard een niet-geclusterde index maken.

Verschil tussen primaire sleutel en unieke sleutel

1. Functie

Een primaire sleutel is een soort van een unieke sleutel-id die een unieke rij identificeert binnen een databasetabel, terwijl een unieke sleutel alle mogelijke rijen identificeert die in een tabel bestaan ​​en niet alleen de momenteel bestaande rijen.

2. Gedrag

Een primaire sleutel wordt gebruikt om een ​​record in een databasetabel te identificeren, terwijl een unieke sleutel wordt gebruikt om dubbele waarden in een kolom te voorkomen, met uitzondering van een ongeldige invoer.

3. Indexering

Een primaire sleutel maakt standaard een geclusterde unieke index, terwijl een unieke sleutel standaard een unieke niet-geclusterde index in een databasetabel is.

4. Null-waarden

Een primaire sleutel kan NULL-waarden in een databasetabel niet accepteren, terwijl een unieke sleutel slechts één NULL-waarde in de tabel kan accepteren.

5. Beperking

Er kan slechts één primaire sleutel in een tabel zijn, maar er kunnen meerdere unieke sleutels zijn voor een tabel in een databasesysteem.

Primaire sleutel versus unieke sleutel

Hoofdsleutel

Unieke sleutel

Een primaire sleutel wordt gebruikt om een ​​record / rij uniek te identificeren in een databasetabel. Een unieke sleutel wordt gebruikt om alle mogelijke rijen in een tabel en niet alleen de momenteel bestaande rijen uniek te identificeren.
Het accepteert geen NULL-waarden. Het kan slechts één NULL-waarde in een tabel accepteren.
Het is standaard een geclusterde index, wat betekent dat gegevens zijn geordend in de geclusterde indexreeks. Het is standaard een unieke niet-geclusterde index.
Er kan slechts één primaire sleutel in een tabel zijn. Een tabel kan meerdere unieke sleutels hebben.
Primaire sleutel wordt gedefinieerd door PRIMARY KEY-beperking te gebruiken. Unieke sleutel wordt weergegeven met een UNIEKE beperking.
Wordt gebruikt om een ​​rij in een tabel te identificeren. Gebruikt om dubbele waarden in een kolom te voorkomen.
Primaire sleutelwaarden kunnen niet worden gewijzigd of verwijderd. Unieke sleutelwaarden kunnen worden gewijzigd.

Samenvatting

  • Zowel de primaire sleutel als de unieke sleutel zijn entiteitsintegriteitsbeperkingen die in veel opzichten vergelijkbaar zijn. Ze hebben echter een groot aantal verschillen als het gaat om programmeren. Beide zijn essentiële concepten die voornamelijk worden gebruikt in databasebeheersystemen.
  • Primaire sleutel is een set van een of meer kolommen / velden van een databasetabel die een record in een tabel uniek identificeert. Unieke sleutel daarentegen voorkomt dat twee records identieke waarden in een kolom hebben.
  • Conceptueel kan er maar één PRIMAIRE SLEUTEL zijn voor een gegeven tafel, terwijl er voor een tafel meer dan één UNIEKE SLEUTEL kan zijn.
  • Een primaire sleutel moet uniek zijn, maar een unieke sleutel hoeft niet noodzakelijk de primaire sleutel te zijn.
  • Een primaire sleutel kan NULL-waarden in een tabel niet accepteren, terwijl een unieke sleutel NULL-waarden kan toestaan ​​met uitzondering van slechts één NULL in een tabel.