SQL ELSŐDLEGES KULCS: Létrehozása és hozzáadása meglévő táblázathoz

Mi az elsődleges kulcs az SQL-ben?

Elsődleges kulcs egy mező vagy mezők kombinációja, amely egyedileg azonosítja a rekordot. Az elsődleges kulcs egy oszlop vagy oszlopkészlet, amely egyedi. Más szóval, minden érték egyedi az elsődleges kulcshoz.

Az elsődleges kulcsra vonatkozó szabályok

  • Minden táblának csak egy elsődleges SQL kulcsa lehet.
  • Minden érték egyedi, és az elsődleges kulcs SQL értéke egyedileg azonosíthatja az egyes sorokat.
  • A rendszer nem engedélyezi a táblázatban már meglévő SQL Server elsődleges kulcsú sor beszúrását.
  • Az elsődleges kulcs nem lehet NULL.

Az alábbi diagram összefoglalja az SQL elsődleges kulcsra vonatkozó összes fenti pontot.

Az SQL elsődleges kulcsának szabályai
Hogyan működik az elsődleges kulcsú SQL

Elsődleges kulcs létrehozása az SQL Serverben

Létrehozhatunk elsődleges kulcsot 2 mód:

1. SQL Server Management Studio

2. T-SQL: Elsődleges létrehozása új tábla létrehozásakor

SQL Server Management Studio

Step 1) Kattintson a jobb gombbal a táblázat nevére. Kattintson Design.

Elsődleges kulcs létrehozása az SQL Serverben

Step 2) Kattintson a jobb gombbal az oszlop nevére. Kattintson 'Elsődleges kulcs beállítása'

Elsődleges kulcs létrehozása az SQL Serverben

Eredmény: Course_Id most a Elsődleges kulcs.

Elsődleges kulcs létrehozása az SQL Serverben

T-SQL: Elsődleges kulcs létrehozása új tábla létrehozása közben.

Az alábbiakban látható a T-SQL-ből származó elsődleges kulccsal tábla létrehozásának szintaxisa

Syntax:

CREATE TABLE <Table_Name>
(
Column1 datatype,
Column2 datatype,CONSTRAINT <Name> PRIMARY KEY (Column name)
.
);

Hozzon létre egy táblázatot, amely egy oszlopot tartalmaz elsődleges SQL kulcsként.

Keresés:

CREATE TABLE COURSE_TSQL_PK 
(Course_ID Int not Null,
 Course_name Varchar(20)
 CONSTRAINT PK PRIMARY KEY (Course_ID)	
)

Step 1) Futtassa a lekérdezést a gombra kattintva – Végrehajt.

Új táblázat létrehozása közben hozzon létre egy elsődleges kulcsot

Eredmény: Course_Id most a Elsődleges kulcs.

Új táblázat létrehozása közben hozzon létre egy elsődleges kulcsot

Példa: Nézzük meg, hogy lehetővé teszi-e több rekord bevitelét ugyanazzal a kurzusazonosítóval.

Step 1) Szúrjon be 4 sort a különböző Course_ID

Insert into COURSE_TSQL_PK values (1,'SQL');
Insert into COURSE_TSQL_PK values (2,'Python');
Insert into COURSE_TSQL_PK values (3,'SQL');
Insert into COURSE_TSQL_PK values (4,'C');

Step 2) Ellenőrizze az összes beillesztett adatot a Select lekérdezés futtatásával.

Új táblázat létrehozása közben hozzon létre egy elsődleges kulcsot

Megjegyzések: A Nem elsődleges kulcsba duplikált értékeket szúrhatunk be.

Step 3) Most próbáljuk meg új rekordok beszúrását egy meglévő Course_ID-vel, amely az elsődleges kulcs.

Insert into COURSE_TSQL_PK values (4,'JAVA');

Eredmény: A rendszer nem teszi lehetővé új érték beszúrását, mivel a 4-es a Course_ID oszlop, amely elsődleges kulcs.

Új táblázat létrehozása közben hozzon létre egy elsődleges kulcsot

Hogyan adhatunk hozzá elsődleges kulcsot a meglévő táblához az SQL-ben?

Most látni fogjuk, hogyan adhatunk hozzá elsődleges kulcsot a meglévő SQL-táblázathoz:

Az ALTER utasítással elsődleges kulcsot hozhat létre. Az elsődleges kulcs azonban csak a NEM NULL-ként definiált oszlopokon hozható létre. Nem hozhat létre elsődleges kulcsot olyan oszlopban, amely engedélyezi a NULL értékeket. Ha meg kell tennie, el kell dobnia, és újra létre kell hoznia a táblázatot.

Íme a szintaxis:

ALTER TABLE tableName
ADD CONSTRAINT constraintName PRIMARY KEY (column_1, column_2, ... column_n);

Például:

ALTER TABLE students
ADD CONSTRAINT students_pk PRIMARY KEY (admission);

Adja hozzá az elsődleges kulcsot a meglévő táblához az SQL-ben

Hozzáadtunk egy elsődleges kulcs megkötést egy már létező táblához. A kényszer hozzáadásra került a felvételi oszlophoz, és a tanulók_pk nevet kapta.

Érdekes tények!

  • Az elsődleges kulcs több oszlop kombinációja is lehet. Ez a kombináció a Összetett elsődleges kulcs.
  • Az elsődleges kulcs legfeljebb 16 oszlopot tartalmazhat.

Összegzésként

  • Minden táblának csak egy elsődleges kulcsa lehet
  • Minden érték egyedi, ami lehet egyedileg azonosítani minden sort.