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.