Что означает код HRESULT 0x880003EE (hrBufferTruncated)?

 
Предыдущий Следующий
hrColumnNull hrDatabaseAttached

hrBufferTruncated

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

hrBufferTruncated (0x880003EE) — буфер слишком мал для размещения данных.

Это предупреждающий статус JET: вызов может оставить полезные выходные данные или корректную позицию курсора, поэтому проверяйте не только код возврата.

В отличие от обычного отказа из-за малого буфера, здесь значение уже было усечено; используйте возвращённую требуемую длину для повторного чтения.

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

  • Сравните требуемый и фактически переданный размер буфера либо лимит исчерпавшегося ресурса ESE. Некоторые warning-статусы при этом всё равно возвращают полезные выходные данные.
  • Сохраните размеры, тип операции и число живых объектов до повтора — это позволяет отличить нормальное увеличение результата от утечки ресурсов.

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

  • Предоставленный caller выходной буфер оказался меньше полного значения, хотя само значение существует.
  • `hrColumnNull` означает, что column действительно содержит NULL и payload bytes для него отсутствуют.
  • Зафиксируйте размер переданного buffer, фактически требуемый размер, column type, retrieval flags и разрешалась ли намеренно partial data.
  • Здесь значение существует; `hrColumnNull` означает отсутствие значения, а `hrColumnMaxTruncated` относится к уменьшению schema maximum. Эти состояния требуют разной обработки.

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


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