¿Qué significa el código HRESULT 0xC800041B (hrIndexInUse)?

 
Anterior Siguiente
hrColumnNotUpdatable hrNullKeyDisallowed

hrIndexInUse

Qué significa hrIndexInUse

El resultado hrIndexInUse aparece cuando el índice mantiene cursores o dependencias que impiden modificarlo o eliminarlo. El valor publicado es 0xC800041B; la condición JET correspondiente es JET_errIndexInUse.

Diferencia frente a resultados vecinos

No es equivalente a hrTableInUse: ese valor indica que cursores u operaciones abiertas impiden un cambio exclusivo sobre la tabla. También se distingue de hrIndexHasPrimary, donde la tabla ya tiene el índice primary requerido y la operación intenta definir otro.

Qué observar

  1. Registra la primera llamada donde se cumple la condición concreta: el índice mantiene cursores o dependencias que impiden modificarlo o eliminarlo.
  2. Conserva el contexto de definición de índice, segmentos de key y posición de búsqueda; para esta página las APIs/estructuras observadas en la referencia incluyen JetMakeKey, JetCreateIndex, JetDeleteIndex, JetSetCurrentIndex, JetSeek, JetSetIndexRange.
  3. Antes del retry, corrige la definición o la posición del cursor con una migración/transacción controlada, sin alterar schema a ciegas.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.