Mot clé SQL CHECK
CHÈQUE
La CHECK
contrainte limite la valeur qui peut être placée dans une colonne.
SQL CHECK sur CREATE TABLE
Le SQL suivant crée une contrainte CHECK sur la colonne "Age" lors de la création de la table "Persons". La contrainte CHECK garantit que vous ne pouvez avoir aucune personne de moins de 18 ans :
MySQL :
CREATE TABLE Persons
(
Age int,
CHECK (Age>=18)
);
SQL Server/Oracle/MS Access :
CREATE TABLE Persons
(
Age int CHECK (Age>=18)
);
Pour autoriser la dénomination d'une contrainte CHECK et pour définir une contrainte CHECK sur plusieurs colonnes, utilisez la syntaxe SQL suivante :
MySQL/SQL Server/Oracle/MS Access :
CREATE TABLE Persons
(
Age int,
City varchar(255),
CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
);
VÉRIFICATION SQL sur ALTER TABLE
Pour créer une contrainte CHECK sur la colonne "Age" lorsque la table est déjà créée, utilisez le SQL suivant :
MySQL/SQL Server/Oracle/MS Access :
ALTER TABLE Persons
ADD CHECK (Age>=18);
Pour autoriser la dénomination d'une contrainte CHECK et pour définir une contrainte CHECK sur plusieurs colonnes, utilisez la syntaxe SQL suivante :
MySQL/SQL Server/Oracle/MS Access :
ALTER TABLE Persons
ADD CONSTRAINT CHK_PersonAge CHECK (Age>=18 AND City='Sandnes');
DROP une contrainte CHECK
Pour supprimer une contrainte CHECK, utilisez le SQL suivant :
SQL Server/Oracle/MS Access :
ALTER TABLE Persons
DROP CONSTRAINT CHK_PersonAge;
MySQL :
ALTER TABLE Persons
DROP CHECK CHK_PersonAge;