sql >> Database >  >> RDS >> Database

SQL-TOETSEN

SQL-TOETSEN zijn enkele of meerdere attributen die worden gebruikt om gegevens uit de tabel te halen volgens de vereiste of voorwaarde. Ze kunnen ook worden gebruikt om relaties tussen verschillende tabellen op te zetten. Er zijn verschillende soorten SQL-TOETSEN, namelijk:

  1. Supertoets
  2. Kandidaatsleutel
  3. Primaire sleutel
  4. Alternatieve sleutel
  5. Samengestelde sleutel
  6. Unieke sleutel
  7. Buitenlandse sleutel

1. SUPER SLEUTEL

Een SUPER KEY is een combinatie van een of meerdere kolommen in een tabel in de database, die helpen bij de unieke identificatie van elke rij in de tabel. Het is een groep van een of meerdere sleutels.

Voorbeeld:

EmpSSN EmpNum EmpName
1254654 TAE03 Harry
2165465 TAE04 Ron
2154864 TAE05 Dobby

In het bovenstaande voorbeeld zijn EmpSSN en EmpNum SUPER KEYS omdat ze helpen bij het uniek identificeren van elke rij in de tabel.

2. KANDIDAATSLEUTEL

CANDIDATE KEY is ook een set kolommen of attributen die helpen om elke rij in de tabel afzonderlijk te identificeren. Een KANDIDAATSLEUTEL kan worden gedefinieerd als een SUPERSLEUTEL zonder overeenkomende kenmerken. Het kan worden gedemonstreerd als een subset van SUPER KEY. Er kunnen meerdere kandidaatsleutels in een tabel staan.

Voorbeeld:

StuID Rollen Voornaam Achternaam E-mail
01 42 Harry Kane [email protected]
02 43 Ron Wiesley [email protected]
03 44 Dobby Wright [email protected]

StuID, Roll en Email zijn KANDIDAATSLEUTELS in de bovenstaande tabel omdat ze helpen om elke rij uniek te identificeren.

3. PRIMAIRE SLEUTEL

PRIMAIRE SLEUTEL is een attribuut of een groep attributen die helpen bij het duidelijk identificeren van afzonderlijke rijen. De exacte waarde van de PRIMARY KEY kan niet meer dan één keer in de tabel voorkomen. EEN PRIMAIRE SLEUTEL kan worden uitgedrukt als een subset van een KANDIDAATSLEUTEL. Er kunnen niet meerdere PRIMAIRE SLEUTELS in een tabel zijn.

Eigenschappen van een PRIMAIRE SLEUTEL:

  • Er mogen geen dubbele waarden van PRIMARY KEY in de tabel voorkomen.
  • PRIMAIRE SLEUTEL mag geen null-waarden bevatten.
  • De waarde van een PRIMAIRE SLEUTEL mag mettertijd niet worden gewijzigd.
  • Elke afzonderlijke rij in de tabel moet een PRIMAIRE SLEUTEL bevatten.

Voorbeeld:

StuID Rollen Voornaam Achternaam E-mail
01 42 Harry Kane [email protected]
02 43 Ron Wiesley [email protected]
03 44 Dobby Wright [email protected]

StuID is de primaire sleutel in het bovenstaande voorbeeld, omdat het elk record in de tabel op unieke wijze kan identificeren.

4. AFWISSELENDE SLEUTEL

ALTERNATE KEY helpt bij het duidelijk identificeren van de records in de tabel. Er kunnen meerdere kolommen in een tabel zijn die afzonderlijke rijen in de tabel afzonderlijk kunnen identificeren. Van deze attributen wordt slechts één attribuut gekozen als PRIMAIRE SLEUTEL. De rest van de attributen worden ALTERNATE KEYS.

Voorbeeld:

StuID Rollen Voornaam Achternaam E-mail
01 42 Harry Kane [email protected]
02 43 Ron Wiesley [email protected]
03 44 Dobby Wright [email protected]

In het bovenstaande voorbeeld zijn Roll en Email ALTERNATE KEYS.

De volgende weergave helpt KANDIDAATSLEUTEL, PRIMAIRE SLEUTEL en ALTERNATIESLEUTEL op een betere manier te begrijpen.

5. SAMENGESTELDE SLEUTEL

COMPOSITE KEY is een samenvoeging van meerdere kolommen die helpen bij het duidelijk identificeren van elke rij. Deze herkenbaarheid is alleen gegarandeerd wanneer de kolommen worden gecombineerd. Wanneer de kolommen afzonderlijk worden genomen, belooft dit geen onderscheidend vermogen. EEN PRIMAIRE SLEUTEL die uit meerdere attributen bestaat, wordt gedefinieerd als een SAMENGESTELDE SLEUTEL.

Voorbeeld:

Bestelnr Product-ID Productnaam Hoeveelheid
A001 5624185 LCD 1
A001 3216546 Printer 2
A001 3516527 Muis 3
A002 9816846 Toetsenblok 1
A003 7160354 USB 5

In het bovenstaande voorbeeld zijn OrderNo en ProductID gecombineerd om de COMPOSITE KEY te vormen. Ze kunnen niet elke rij in de tabel afzonderlijk identificeren, maar wanneer ze worden gecombineerd, kunnen ze elke record in de tabel uniek identificeren.

6. UNIEKE SLEUTEL

UNIQUE KEY kan ook elke rij in een tabel op unieke wijze identificeren, zoals een PRIMARY KEY. Maar, in tegenstelling tot een PRIMAIRE SLEUTEL, kan een UNIEKE SLEUTEL slechts één enkele null-waarde hebben. Er kunnen meerdere UNIEKE SLEUTELS in een tabel zitten.

Voorbeeld:

Laten we eens kijken naar een studententabel met de volgende kolommen.

In de bovenstaande kolommen is CityID de UNIEKE SLEUTEL. Stel, als een student de stad verlaat en voor studie naar het buitenland gaat, dan is de CityID van die student er niet. In dat geval wordt dat attribuut null en zijn null-waarden toegestaan ​​in UNIQUE KEY.

7. BUITENLANDSE SLEUTEL

EEN BUITENLANDSE SLEUTEL in een tabel is een attribuut dat een relatie tussen twee tabellen tot stand brengt. EEN BUITENLANDSE SLEUTEL van de ene tabel verwijst naar de PRIMAIRE SLEUTEL van een andere tabel, waarmee de relatie tussen de twee tabellen tot stand wordt gebracht. EEN BUITENLANDSE SLEUTEL kan meerdere null- en dubbele waarden accepteren.

Voorbeeld:

Laten we eens kijken naar de volgende twee tabellen, de Studenten tafel, en de Bestelling tabellen.

De eerste tabel is de Studenten tafel.

StuID FNaam LNaam Stad
1 Harry Kane Kolkata
2 Ron Wiesley Noida
3 Dobby Wright Mumbai

De tweede tafel is de Order tafel.

Order-ID Bestelnr StuID
1 65498545 3
2 46546854 2
3 21654698 3
4 65165415 1

De StuID in de Studenten tabel is de PRIMARY KEY, en de StuID in de Order tabel is de BUITENLANDSE SLEUTEL.

Dit zijn de essentiële sleutels in SQL waaraan belang moet worden gehecht bij het maken van of omgaan met databases.


  1. Hoe de korte maandnaam van een datum in MariaDB te krijgen?

  2. 5 tips om uw database veilig te houden

  3. Een inleiding tot de Java Security API

  4. MySQL relationele databases gebruiken op Debian 5 (Lenny)