Что означает код HRESULT 0xC80005DF (hrColumnDoesNotFit)?

 
Предыдущий Следующий
hrColumnLong hrNullInvalid

hrColumnDoesNotFit

Что означает hrColumnDoesNotFit

hrColumnDoesNotFit (0xC80005DF) — поле не помещается в запись.

Это старый HRESULT-вариант результата ESE (Extensible Storage Engine, ESENT); в JET API соответствующее условие известно как JET_errColumnDoesNotFit.

Что проверить

  • Проверьте актуальную схему: JET_COLUMNID, тип, максимальную длину, NULL-ограничения и tagged/multivalued флаги. После изменения схемы старые идентификаторы использовать нельзя.
  • Для чтения/записи сохраните длину значения, размер буфера и, для многозначного поля, itagSequence. NULL, пустое значение и отсутствующий экземпляр различаются.

Практический смысл и диагностика

  • Новое значение столбца не помещается в доступный record layout/row budget текущей ESE записи.
  • hrRecordTooBig описывает итоговую собранную запись; hrColumnDoesNotFit акцентирует конкретную attempted column placement/value.
  • Сохраните current row size, fixed/variable/tagged columns, null bitmap, multivalue overhead и размер нового value в bytes.
  • Уменьшите/перенесите значение согласно schema design и проверяйте полный assembled row против record budget, а не только размер одного поля.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.