¿Qué significa el código HRESULT 0xC80005E0 (hrNullInvalid)?

 
Anterior Siguiente
hrColumnDoesNotFit hrColumnIndexed

hrNullInvalid

hrNullInvalid: cómo leer el resultado

En el flujo legacy ESE/Directory Service, hrNullInvalid describe que la definición de la columna exige un valor no NULL y el update intenta dejarla en NULL.

El valor publicado es 0xC80005E0; la condición JET correspondiente es JET_errNullInvalid. No es equivalente a hrNullKeyDisallowed: ese valor indica que la definición de índice o fila genera una key NULL donde el contrato del índice la prohíbe. También se distingue de hrInvalidColumnType, donde el JET_coltyp o su combinación de flags no es válida para la columna.

Diagnóstico diferencial

Registra la primera llamada donde se cumple la condición concreta: la definición de la columna exige un valor no NULL y el update intenta dejarla en NULL.

  1. Conserva el contexto de objetos de schema y dependencias dentro de la tabla; para esta página las APIs/estructuras observadas en la referencia incluyen JET_COLUMNDEF, JetAddColumn, JetDeleteColumn, JetSetColumn, JetRetrieveColumn.
  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: hrNullKeyDisallowed, hrInvalidColumnType, hrRecordTooBig.

Referencias técnicas


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