¿Qué significa el código HRESULT 0xC8000517 (hrTableDuplicate)?

 
Anterior Siguiente
hrTableLocked hrTableInUse

hrTableDuplicate

hrTableDuplicate: qué cambia este hresult

En el flujo legacy ESE/Directory Service, hrTableDuplicate describe que la creación de tabla reutiliza un nombre que ya existe en la base.

El valor publicado es 0xC8000517; la condición JET correspondiente es JET_errTableDuplicate. No es equivalente a hrObjectDuplicate: ese valor indica que la creación de schema colisiona con un objeto del mismo nombre dentro del namespace. También se distingue de hrObjectNotFound, donde un nombre de objeto válido no existe en el scope de base o tabla seleccionado.

Aislamiento de la causa

Registra la primera llamada donde se cumple la condición concreta: la creación de tabla reutiliza un nombre que ya existe en la base.

  1. Conserva el contexto de tabla, cursores abiertos y cambios estructurales del schema; para esta página las APIs/estructuras observadas en la referencia incluyen JetOpenTable, JetCreateTableColumnIndex, JetDeleteTable, JET_TABLEID.
  2. 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.

Códigos cercanos que conviene separar en logs: hrObjectDuplicate, hrObjectNotFound, hrTableInUse.

Referencias técnicas


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