SQL - Contraintes

Les contraintes sont les règles appliquées aux colonnes de données d'une table. Ceux-ci sont utilisés pour limiter le type de données qui peuvent entrer dans une table. Cela garantit l'exactitude et la fiabilité des données de la base de données.

Les contraintes peuvent être au niveau de la colonne ou au niveau de la table. Les contraintes au niveau de la colonne ne sont appliquées qu'à une seule colonne, tandis que les contraintes au niveau de la table sont appliquées à l'ensemble du tableau.

Voici quelques-unes des contraintes les plus couramment utilisées disponibles dans SQL. Ces contraintes ont déjà été discutées dans le chapitre SQL - SGBDR Concepts , mais il vaut la peine de les réviser à ce stade.

  • NOT NULL Contrainte - Garantit qu'une colonne ne peut pas avoir la valeur NULL.

  • Contrainte DEFAULT - Fournit une valeur par défaut pour une colonne lorsqu'aucune n'est spécifiée.

  • Contrainte UNIQUE - Garantit que toutes les valeurs d'une colonne sont différentes.

  • Clé PRIMAIRE - Identifie de manière unique chaque ligne / enregistrement dans une table de base de données.

  • FOREIGN Key - Identifie de manière unique une ligne / un enregistrement dans n'importe quelle table de base de données donnée.

  • Contrainte CHECK - La contrainte CHECK garantit que toutes les valeurs d'une colonne remplissent certaines conditions.

  • INDEX - Utilisé pour créer et récupérer des données de la base de données très rapidement.

Les contraintes peuvent être spécifiées lorsqu'une table est créée avec l'instruction CREATE TABLE ou vous pouvez utiliser l'instruction ALTER TABLE pour créer des contraintes même après la création de la table.

Suppression des contraintes

Toute contrainte que vous avez définie peut être supprimée à l'aide de la commande ALTER TABLE avec l'option DROP CONSTRAINT.

Par exemple, pour supprimer la contrainte de clé primaire dans la table EMPLOYEES, vous pouvez utiliser la commande suivante.

ALTER TABLE EMPLOYEES DROP CONSTRAINT EMPLOYEES_PK;

Certaines implémentations peuvent fournir des raccourcis pour supprimer certaines contraintes. Par exemple, pour supprimer la contrainte de clé primaire pour une table dans Oracle, vous pouvez utiliser la commande suivante.

ALTER TABLE EMPLOYEES DROP PRIMARY KEY;

Certaines implémentations vous permettent de désactiver les contraintes. Au lieu de supprimer définitivement une contrainte de la base de données, vous souhaiterez peut-être désactiver temporairement la contrainte, puis l'activer ultérieurement.

Contraintes d'intégrité

Des contraintes d'intégrité sont utilisées pour assurer l'exactitude et la cohérence des données dans une base de données relationnelle. L'intégrité des données est gérée dans une base de données relationnelle à travers le concept d'intégrité référentielle.

Il existe de nombreux types de contraintes d'intégrité qui jouent un rôle dans Referential Integrity (RI). Ces contraintes incluent la clé primaire, la clé étrangère, les contraintes uniques et d'autres contraintes mentionnées ci-dessus.