¿Qué significa el código HRESULT 0xC800041D (hrNullKeyDisallowed)?

 
Anterior Siguiente
hrIndexInUse hrNotInTransaction

hrNullKeyDisallowed

Qué significa hrNullKeyDisallowed

El resultado hrNullKeyDisallowed aparece cuando la definición de índice o fila genera una key NULL donde el contrato del índice la prohíbe. El valor publicado es 0xC800041D; la condición JET correspondiente es JET_errNullKeyDisallowed.

Diferencia frente a resultados vecinos

No es equivalente a hrNullInvalid: ese valor indica que la definición de la columna exige un valor no NULL y el update intenta dejarla en NULL. También se distingue de hrNoCurrentIndex, donde la operación de cursor necesita un índice activo, pero no hay ninguno seleccionado.

Comprobación dirigida

  1. Registra la primera llamada donde se cumple la condición concreta: la definición de índice o fila genera una key NULL donde el contrato del índice la prohíbe.
  2. 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 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.