Oracle/PLSQL: mensaje de error ORA-00001

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

Oracle/PLSQL: mensaje de error ORA-00001

Aprenda por qué y cómo resolver los mensajes de error ORA-00001 en Oracle.

describir

Cuando encuentra un error ORA-00001, aparece el siguiente mensaje de error:

  • ORA-00001: restricción única (restricción_nombre) violada

razón

Intentó ejecutar una declaración INSERT o UPDATE que creó valores duplicados en un campo restringido por un índice único.

resolver

Las opciones para resolver este error de Oracle incluyen:

Opción 1

Eliminar la restricción única.

Opcion 2

Cambie las restricciones para permitir valores duplicados.

Opción #3

Modifica tu SQL para que no se creen valores duplicados.

notas

Si no está seguro de qué restricción única se viola, puede ejecutar el siguiente SQL:

SELECT DISTINCT table_name
FROM all_indexes
WHERE index_name = 'CONSTRAINT_NAME';

En nuestro ejemplo (ver imagen arriba), nuestro nombre de restricción es SYS_C002459 y ejecutaremos el siguiente SQL:

SELECT DISTINCT table_name
FROM all_indexes
WHERE index_name="SYS_C002459";

Esto devuelve el nombre de la tabla cuya restricción única violamos.

(Visited 14 times, 1 visits today)