CHIAVE PRIMARIA SQL: come creare e aggiungere alla tabella esistente

Che cos'è la chiave primaria in SQL?

Chiave primaria è un campo o una combinazione di campi che identificano un record in modo univoco. La chiave primaria è una colonna o un insieme di colonne univoche. In altre parole, ogni valore è univoco per la chiave primaria.

Regole per la chiave primaria

  • Ogni tabella può avere solo una chiave primaria SQL.
  • Tutti i valori sono univoci e il valore SQL della chiave primaria può identificare in modo univoco ogni riga.
  • Il sistema non consentirà l'inserimento di una riga con la chiave primaria SQL Server già esistente nella tabella.
  • La chiave primaria non può essere NULL.

Il diagramma seguente riassume tutti i punti precedenti per la chiave primaria SQL.

Regole per la chiave primaria in SQL
Come funziona l'SQL della chiave primaria

Come creare una chiave primaria in SQL Server

Possiamo creare una chiave primaria in 2 modi:

1. SQL Server Management Studio

2. T-SQL: crea primario durante la creazione di una nuova tabella

SQL Server Management Studio

Passo 1) Fare clic con il tasto destro sul nome della tabella. Clicca su Design.

Crea la chiave primaria in SQL Server

Passo 2) Fare clic con il tasto destro sul nome della colonna. Clicca su 'Imposta chiave primaria'

Crea la chiave primaria in SQL Server

Risultato: Course_Id ora è a Chiave primaria.

Crea la chiave primaria in SQL Server

T-SQL: crea una chiave primaria durante la creazione di una nuova tabella.

Di seguito è riportata la sintassi per creare una tabella con chiave primaria da T-SQL

Sintassi:

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

Creiamo una tabella con una colonna come chiave primaria SQL.

Query:

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

Passo 1) Eseguire la query facendo clic su 'Eseguire.'

Crea una chiave primaria durante la creazione di una nuova tabella

Risultato: Course_Id ora è a Chiave primaria.

Crea una chiave primaria durante la creazione di una nuova tabella

Esempio: Vediamo se consente l'inserimento di più record con lo stesso ID corso.

Passo 1) Inserisci 4 righe con ID_corso diverso

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');

Passo 2) Verificare tutti i dati inseriti correttamente eseguendo la query Seleziona.

Crea una chiave primaria durante la creazione di una nuova tabella

Note:: Possiamo inserire valori duplicati nella chiave non primaria.

Passo 3) Ora proviamo a inserire nuovi record con un Course_ID esistente che è la chiave primaria.

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

Risultato: Il sistema non consente l'inserimento di un nuovo valore poiché 4 è presente la colonna Course_ID che è una chiave primaria.

Crea una chiave primaria durante la creazione di una nuova tabella

Come aggiungere la chiave primaria alla tabella esistente in SQL?

Ora vedremo come aggiungere la chiave primaria alla tabella esistente in SQL:

È possibile utilizzare l'istruzione ALTER per creare una chiave primaria. Tuttavia, la chiave primaria può essere creata solo su colonne definite come NOT NULL. Non è possibile creare una chiave primaria su una colonna che consente NULL. Se necessario, è necessario eliminare e ricreare la tabella.

Ecco la sintassi:

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

Per esempio:

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

Aggiungi la chiave primaria alla tabella esistente in SQL

Abbiamo aggiunto un vincolo di chiave primaria a una tabella già esistente. Il vincolo è stato aggiunto nella colonna di ammissione e gli è stato assegnato il nome students_pk.

Fatti interessanti!

  • La chiave primaria può essere una combinazione di più colonne. Questa combinazione è nota come Chiave primaria composita.
  • La chiave primaria può avere un massimo di 16 colonne.

Sintesi

  • Ogni tabella può avere una sola chiave primaria
  • Tutti i valori sono unici e possono identificare in modo univoco ogni riga.

Riassumi questo post con: