No dudes en divulgar nuestros post y códigos con otro, ayúdanos a hacer crecer nuestra comunidad.
Solución:
Enfrentó un problema similar.
Si solo necesita deshacerse del error, haga lo siguiente:
SELECT 'ALTER INDEX '||OWNER||'.'||INDEX_NAME||' REBUILD;'
FROM DBA_INDEXES
WHERE STATUS = 'UNUSABLE';
Esto generará ALTER INDEX ... REBUILD;
declaraciones para todos los índices “inutilizables”. Ejecútelos para que los índices puedan volver a ser “utilizables”.
De la documentación a la que se vincula:
Las restricciones ÚNICAS se verifican cuando los índices se reconstruyen al final de la carga. El índice se deja en un estado de índice inutilizable si infringe una restricción ÚNICA.
De la forma en que lo leo, lo mismo se aplica a PRIMARY KEY
restricciones aunque la redacción es un poco ambigua. Es posible que no le guste este comportamiento, pero no es “un error”, ya que se está comportando según lo diseñado, y hay otras formas de terminar con este tipo de restricción ‘rota’.
Consulte esta publicación de OTN para obtener más información y un enfoque que podría funcionar mejor para usted usando pl/sql y forall ... save exceptions
.
Recuerda que tienes la capacidad de parafrasear tu experiencia si te fue de ayuda.