Lexique informatique › Bases de données › Contrainte d'exclusion

Contrainte d'exclusion Exclusion constraint

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

La généralisation de l'unicité : au lieu d'exiger que deux lignes n'aient pas la même valeur, on peut exiger qu'elles ne se chevauchent pas, ne se croisent pas ou ne soient pas trop proches.

Un index unique est le cas particulier où l'opérateur se trouve être l'égalité. PostgreSQL permet de choisir n'importe quel opérateur que le type d'index prend en charge, ce qui ouvre des conditions autrement impossibles à exprimer de façon déclarative. L'exemple de manuel, ce sont les réservations : EXCLUDE USING gist (room WITH =, during WITH &&) dit que deux lignes ne peuvent pas avoir la même salle et des plages horaires qui se chevauchent en même temps. L'alternative côté application consiste à demander d'abord si le créneau est libre, puis à écrire — une situation de concurrence qui n'attend que d'avoir assez de trafic pour se produire. Mélanger l'égalité sur des colonnes ordinaires et le chevauchement sur des plages exige l'extension btree_gist.

← Retour au lexique