CLÉ PRIMAIRE SQL
Contrainte SQL PRIMARY KEY
La contrainte PRIMARY KEY identifie de manière unique chaque enregistrement dans une table de base de données.
Les clés primaires doivent contenir des valeurs uniques.
Les colonnes de clé primaire ne peuvent pas contenir de valeurs NULL.
Chaque table doit avoir une clé primaire, et chaque table ne peut avoir qu'une seule clé primaire.
Contrainte SQL PRIMARY KEY lors de CREATE TABLE
Le SQL suivant crée une contrainte PRIMARY KEY sur la colonne "P_Id" lors de la création de la table "Persons" :
MySQL :
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar( 255 ),
Adresse varchar(255),
Ville varchar(255),
CLÉ PRIMAIRE (P_Id)
)
SQL Server / Oracle / MS Access :
(
P_Id int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255) ) ,
Adresse varchar(255),
City varchar(255)
)
Si vous devez nommer la contrainte PRIMARY KEY et définir la contrainte PRIMARY KEY pour plusieurs colonnes , veuillez utiliser la syntaxe SQL suivante :
MySQL / SQL Server / Oracle / MS Access :
(
P_Id int NOT NULL ,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Adresse varchar(255),
Ville varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY ( P_Id,LastName )
)
Remarque : Dans l'exemple ci-dessus, il n'y a qu'une seule clé primaire PRIMARY KEY (pk_PersonID). Cependant, la valeur de pk_PersonID est représentée par deux colonnes (P_Id et
Nom de famille).
Contrainte SQL PRIMARY KEY lorsque ALTER TABLE
Lorsque la table a été créée, si vous devez créer une contrainte PRIMARY KEY sur la colonne "P_Id", veuillez utiliser le SQL suivant :
MySQL/SQL Server/Oracle/MS Access :
ADD PRIMARY KEY (P_Id)
Pour nommer une contrainte PRIMARY KEY et définir des contraintes PRIMARY KEY pour plusieurs colonnes, veuillez utiliser la syntaxe SQL suivante :
MySQL / SQL Server / Oracle / MS Access :
ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
Remarque : Si vous utilisez l'instruction ALTER TABLE pour ajouter une clé primaire, La colonne de clé primaire doit être déclarée comme ne contenant pas de valeurs NULL (lors de la première création de la table).
Révoquer la contrainte PRIMARY KEY
Pour révoquer la contrainte PRIMARY KEY, veuillez utiliser le SQL suivant :
MySQL :
DROP PRIMARY KEY
SQL Server / Oracle / MS Access :
DROP CONSTRAINT pk_PersonID