| Previous | Next |
| hrNullInvalid | hrColumnTooBig |
hrColumnIndexed
Interpretation in ESE terms
hrColumnIndexed means a column cannot be removed because one or more indexes reference it.
This is the legacy Directory Service backup/restore HRESULT form of JET_errColumnIndexed (0xC80005E1).
The key comparison is: hrColumnInUse is broader; this result directly identifies index dependency during deletion. The first useful observation is to enumerate index segments and conditional columns that depend on the column. This evidence separates schema definition, row-size accounting, null semantics, multivalue selection, and stale column IDs.
The ESE objects in play
| Diagnostic layer | column schema, row-size accounting, tagged/multivalued storage, and column identifiers |
|---|---|
| Typical API surface | JetAddColumn, JetDeleteColumn, JetSetColumn, JetRetrieveColumn, and JET_COLUMNDEF |
| Code-specific condition | a column cannot be removed because one or more indexes reference it |
| First corrective direction | drop or rebuild dependent indexes before deleting the column, with rollback-safe migration steps |
Null, zero-length, deletion, and missing multivalue instances are distinct states. Fixed, variable, tagged, and long-value columns consume row space differently.
Comparison with adjacent failures
hrColumnInUse | a schema change targets a column that an index or other active definition still depends on |
|---|---|
hrColumnLong | a supplied value exceeds the operation or column path intended for ordinary-sized data |
hrColumnDuplicate | column creation reused a name already defined in the table |
What to capture before retrying
- Code-specific observation: enumerate index segments and conditional columns that depend on the column.
- the encoded value length, null/empty state, and itag sequence.
- the complete row-size contribution from fixed, variable, tagged, and long-value data.
- JET_COLUMNDEF fields, flags, code page, maximum length, and column ID origin.
Actions that can hide or worsen the problem
- Do not alter the column schema in place without a migration and rollback plan.
- Do not collapse null, zero-length data, missing value, and tagged-value deletion into one state.
Operational response
- Freeze the failing request context and record
0xC80005E1, the Jet API name, and the current instance/session ownership. - Verify the code-specific precondition: enumerate index segments and conditional columns that depend on the column.
- Apply the targeted fix: drop or rebuild dependent indexes before deleting the column, with rollback-safe migration steps.
- Before retrying the operation, reconcile column metadata, row layout, and the exact stored value state.
Technical references
Looking for a different code? Search another status or error code.
