DBAtlas · Atlas de operaciones de bases de datos

547: The INSERT/UPDATE/DELETE statement conflicted with the FOREIGN KEY / CHECK constraint (la sentencia entró en conflicto con la restricción FOREIGN KEY / CHECK)

SQL Server

¿Qué significa?

La sentencia violó una restricción FOREIGN KEY o CHECK. O bien referenció una fila padre que no existe, escribió un valor que incumple una regla CHECK o intentó eliminar una fila padre que aún está referenciada.

¿Por qué ocurre?

FK: la fila padre referenciada por la fila hija insertada no existe. DELETE/UPDATE: hay filas hijas que dependen de la fila padre que se elimina/modifica. CHECK: el valor de la columna no cumple la condición definida.

Cómo solucionarlo

Inserte primero la fila padre y luego la fila hija. Para eliminaciones, elimine primero las filas dependientes o defina ON DELETE CASCADE donde corresponda. Para una violación de CHECK, haga que el valor cumpla la regla. Identifique la restricción violada a partir del nombre de la restricción en el texto del error.

Abrir en DBAtlas →

Más entradas de este motor