SQL PRIMÆR NØGLE: Sådan oprettes og føjes til eksisterende tabel

Hvad er primærnøgle i SQL?

Primærnøgle er et felt eller en kombination af felter, der identificerer en post unikt. Den primære nøgle er en kolonne eller et sæt af kolonner, der er unikke. Med andre ord er hver værdi unik for Primary Key.

Regler for primærnøgle

  • Hver tabel kan kun have én primær SQL-nøgle.
  • Alle værdierne er unikke, og den primære SQL-nøgleværdi kan identificere hver række entydigt.
  • Systemet tillader ikke indsættelse af en række med SQL Server Primary Key, som allerede findes i tabellen.
  • Primær nøgle kan ikke være NULL.

Nedenstående diagram opsummerer alle ovenstående punkter for SQL Primary Key.

Regler for primærnøgle i SQL
Sådan fungerer Primary Key SQL

Sådan opretter du primær nøgle i SQL Server

Vi kan oprette en primær nøgle ind 2 måder:

1. SQL Server Management Studio

2. T-SQL: Opret primær, mens du opretter en ny tabel

SQL Server Management Studio

Trin 1) Højreklik på tabelnavnet. Klik på Design.

Opret primær nøgle i SQL Server

Trin 2) Højreklik på kolonnenavnet. Klik på 'Indstil primær nøgle'

Opret primær nøgle i SQL Server

Resultat: Course_Id er nu en Primærnøgle.

Opret primær nøgle i SQL Server

T-SQL: Opret en primær nøgle, mens du opretter en ny tabel.

Nedenfor er syntaksen til at oprette tabel med Primary Key fra T-SQL

Syntaks:

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

Lad os oprette en tabel med én kolonne som en primær SQL-nøgle.

Forespørgsel:

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

Trin 1) Kør forespørgslen ved at klikke på "Udfør."

Opret en primær nøgle, mens du opretter en ny tabel

Resultat: Course_Id er nu en Primærnøgle.

Opret en primær nøgle, mens du opretter en ny tabel

Eksempel: Lad os se, om det tillader indtastning af flere poster med samme kursus-id.

Trin 1) Indsæt 4 rækker med forskelligt 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');

Trin 2) Bekræft alle data, der er indsat, ved at køre Select-forespørgslen.

Opret en primær nøgle, mens du opretter en ny tabel

Bemærk: Vi kan indsætte duplikerede værdier i den ikke-primære nøgle.

Trin 3) Lad os nu prøve at indsætte nye poster med et eksisterende Course_ID, som er Primary Key.

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

Resultat: Systemet tillader ikke indsættelse af ny værdi, da 4 er der Course_ID kolonne, som er en primær nøgle.

Opret en primær nøgle, mens du opretter en ny tabel

Hvordan tilføjes primær nøgle til eksisterende tabel i SQL?

Nu vil vi se, hvordan du tilføjer Primary Key til eksisterende tabel i SQL:

Du kan bruge ALTER-sætningen til at oprette en primærnøgle. Den primære nøgle kan dog kun oprettes på kolonner, der er defineret som IKKE NULL. Du kan ikke oprette en primær nøgle på en kolonne, der tillader NULL. Hvis du skal gøre det, skal du slippe og genskabe bordet.

Her er syntaksen:

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

For eksempel:

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

Tilføj primærnøgle til eksisterende tabel i SQL

Vi har tilføjet en primær nøglebegrænsning til en allerede eksisterende tabel. Begrænsningen er tilføjet på adgangskolonnen og tildelt navnet students_pk.

Interessante fakta!

  • Den primære nøgle kan være en kombination af flere kolonner. Denne kombination er kendt som Sammensat primær nøgle.
  • Den primære nøgle kan maksimalt have 16 kolonner.

Resumé

  • Hver tabel kan kun have én primær nøgle
  • Alle værdierne er unikke, hvilket kan identificere hver række unikt.