CHECK Constraint

PostgreSQL 🟢 Junior

Définition

Contrainte qui vérifie qu'une condition booléenne est vraie pour chaque ligne. Peut référencer plusieurs colonnes de la même table.

Analogie

Un videur qui vérifie ta carte d'identité : si tu as moins de 18 ans, tu ne rentres pas.

Exemple de code

CREATE TABLE products (
  id SERIAL PRIMARY KEY,
  price NUMERIC CHECK (price > 0),
  discount NUMERIC CHECK (discount BETWEEN 0 AND 1)
);

Cas d'usage

Garantir les règles métier au niveau de la base : prix positif, âge minimum, stock non négatif.

Termes liés

#sgbd#interview#database#postgresql

En entretien

  1. Explique-moi ce qu'est une contrainte CHECK.

    C'est une contrainte qui vérifie qu'une condition booléenne est vraie pour chaque ligne, comme un videur qui vérifie ta carte d'identité. Elle peut référencer plusieurs colonnes de la même table.

  2. Donne un exemple de règle métier qu'on garantirait avec une contrainte CHECK.

    On peut garantir qu'un prix reste positif avec CHECK (price > 0), ou qu'une remise reste comprise entre 0 et 1. Ça permet d'imposer des règles métier directement au niveau de la base.

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre