Lexique informatique › Bases de données › Contrainte CHECK

Contrainte CHECK

Bases de données Svenska → Mis à jour: 2026-09-20

Fonction SQL : un prédicat que chaque ligne doit satisfaire. CHECK (age >= 0). Une validation au niveau de la base plutôt que dans le code applicatif — l'invariant est garanti même si un autre client écrit.

Idéale pour les règles de domaine : status IN ('active','pending','closed'), email LIKE '%@%', start_date < end_date. PostgreSQL les gère pleinement ; MySQL les a longtemps ignorées (syntaxe acceptée, mais jamais appliquée) — corrigé en 8.0.16 (2019). Souvent combinée aux types de domaine pour exprimer des validations complexes. Côté performances, les vérifications simples ne coûtent quasiment rien à l'INSERT/UPDATE ; quant aux CHECK avec sous-requête, le standard SQL ne les prévoit pas. Les contraintes d'exclusion de PostgreSQL reprennent une idée voisine pour valider des règles entre lignes.

← Retour au lexique