Что означает код HRESULT 0x80040E57 (DB_E_DATAOVERFLOW)?

 
Предыдущий Следующий
DB_E_PENDINGCHANGES DB_E_BADHRESULT

DB_E_DATAOVERFLOW

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

DB_E_DATAOVERFLOW (0x80040E57) — Литеральное значение в команде выходит за диапазон типа соответствующего столбца.

Ключевая проверка. Зафиксируйте исходное значение до преобразования. Сохраните исходный и целевой DBTYPE. Зафиксируйте length, precision и scale. Проверьте status каждого привязанного значения. Не меняйте одновременно несколько привязок. Сохраните первый IErrorRecords от provider-а. Повторите преобразование с теми же данными.

Сопоставьте literal/parameter value с точным типом и диапазоном целевого столбца. Зафиксируйте значение до преобразования, включая precision/scale для чисел; уменьшение размер буфера здесь не помогает. Исправьте значение или схему/тип только после подтверждения, какой предел был превышен.

Документация для результата 0x80040E57: OLE DB rowsets · IRow · OLE DB interfaces.


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