DBAtlas · Atlas d'exploitation des bases de données

547: The INSERT/UPDATE/DELETE statement conflicted with the FOREIGN KEY / CHECK constraint (instruction en conflit avec une contrainte FOREIGN KEY / CHECK)

SQL Server

Que signifie cette erreur ?

L'instruction a violé une contrainte FOREIGN KEY ou CHECK. Soit elle a référencé une ligne parente inexistante, soit elle a écrit une valeur qui enfreint une règle CHECK, soit elle a tenté de supprimer une ligne parente encore référencée.

Cause

FK : la ligne parente référencée par la ligne enfant insérée n'existe pas. DELETE/UPDATE : des lignes enfants dépendent de la ligne parente supprimée/modifiée. CHECK : la valeur de la colonne ne satisfait pas la condition définie.

Comment la corriger

Insérez d'abord la ligne parente, puis la ligne enfant. Pour les suppressions, supprimez d'abord les lignes dépendantes ou définissez ON DELETE CASCADE le cas échéant. Pour une violation de CHECK, rendez la valeur conforme à la règle. Identifiez la contrainte violée à partir de son nom dans le texte de l'erreur.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur