| Anterior | Siguiente |
| hrDatabaseLocked | hrTableDuplicate |
hrTableLocked
Condición de ESE: hrTableLocked
hrTableLocked indica que la tabla mantiene un lock incompatible con la operación solicitada. El valor publicado es 0xC8000516; la condición JET correspondiente es JET_errTableLocked.
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 hrTableNotEmpty, donde la operación estructural exige una tabla vacía, pero ya existen filas.
Comprobación dirigida
- Registra la primera llamada donde se cumple la condición concreta: la tabla mantiene un lock incompatible con la operación solicitada.
- Conserva el contexto de tabla, cursores abiertos y cambios estructurales del schema; para esta página las APIs/estructuras observadas en la referencia incluyen
JET_TABLEID,JetOpenTable,JetCreateTableColumnIndex,JetDeleteTable. - 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.
La aceptación de la corrección consiste en repetir la misma API con el mismo tipo de objeto y comprobar que hrTableLocked ya no aparece, sin perder el estado válido del cursor, archivo o backup.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.
