SQL CONSTRAINT



SQL > Manipulation de table > Constraint 

Les contraintes permettent de limiter le type de données à insérer dans une table. Ces contraintes peuvent être spécifiées lors de la création de la table par l’intermédiaire de l’instruction CREATE TABLE, ou après la création de la table au moyen de l’instruction ALTER TABLE.

Les contraintes les plus communes sont :

Ci-dessous, vous trouverez une description détaillée de chaque contrainte.

NOT NULL

Une colonne accepte par défaut une valeur NULL. Pour rejeter une valeur NULL dans une colonne, vous devez définir une contrainte sur cette colonne en indiquant que celle-ci n’acceptent pas de valeur NULL.

Par exemple, dans l’instruction suivante

CREATE TABLE Customer
(SID integer NOT NULL,
Last_Name varchar(30) NOT NULL,
First_Name varchar(30));

Les colonnes "SID" et "Last_Name" n’accepte pas de valeur NULL, alors que "First_Name" peut en accepter.

UNIQUE

La contrainte UNIQUE garantit que toutes les valeurs d’une colonne ne peuvent comporter de doublons.

Par exemple, dans l’instruction suivante

CREATE TABLE Customer
(SID integer UNIQUE,
Last_Name varchar(30),
First_Name varchar(30));

La colonne "SID" n’accepte pas de doublons, alors qu’une telle contrainte ne s’applique pas aux colonnes "Last_Name" et "First_Name".

Notez qu’une colonne qui est spécifiée en tant que clé primaire ne peut accepter de doublons. En même temps, une colonne qui n’accepte pas de doublons peut ou ne pas être une clé primaire.

CHECK

La contrainte CHECK permet que toutes les valeurs d’une colonne satisfassent des conditions données.

Par exemple, dans l’instruction suivante :

CREATE TABLE Customer
(SID integer CHECK (SID > 0),
Last_Name varchar(30),
First_Name varchar(30));

La colonne "SID" ne peut accepter que des entiers supérieurs à 0.

Notez que la contrainte CHECK ne peut pas être exécutée par MySQL cette fois-ci.

Clé primaire et clé étrangère seront traités dans les deux prochaines sections.

SQL Clé primaire >>

Cette page a été mise à jour pour la dernière fois le 18/06/2022


Copyright © 2024   1keydata.com   Tous droits réservés