DBAtlas · Atlas de operaciones de bases de datos

23514: check_violation

PostgreSQL

¿Qué significa?

Se violó una restricción CHECK. La fila insertada o actualizada no cumple una condición lógica definida en la tabla (p. ej., price > 0).

¿Por qué ocurre?

Datos que incumplen una regla de negocio (precio negativo, código de estado no válido, violación de rango de fechas); sin validación en el lado de la aplicación; una restricción demasiado estricta para los datos; registros que incumplen la regla durante una carga masiva.

Cómo solucionarlo

Use el nombre de la restricción del mensaje de error para averiguar qué condición se violó; vea la definición: \d table_name. Consulte las filas infractoras invirtiendo la condición. Corrija los datos o, si la regla realmente ha cambiado, actualice la restricción: ALTER TABLE my_table DROP CONSTRAINT name; ALTER TABLE my_table ADD CONSTRAINT name CHECK (new_condition);

Abrir en DBAtlas →

Más entradas de este motor