| Предыдущий | Следующий |
| DB_E_BADDYNAMICERRORID | DB_E_BADCONVERTFLAG |
DB_E_PENDINGINSERT
Что означает DB_E_PENDINGINSERT
DB_E_PENDINGINSERT (0x80040E5B) — Не удалось получить актуальные данные недавно вставленной строки, поскольку вставка ещё не завершена.
Ключевая проверка. Проверьте pending insert именно этой строки. Сохраните HROW/HCHAPTER до операции. Сверьте rowset properties с navigation request. Проверьте lifetime полученного дескриптора. Не переносите handles между rowset objects. Сохраните первый IErrorRecords от provider. Повторите тот же fetch/navigation method.
Недавно вставленная строка ещё не достигла состояния, в котором provider может вернуть актуальные данные. Завершите pending insert/update batch и только после этого перечитывайте generated/default values. Старый HROW до commit может не отражать окончательную identity строки.
Документация для результата 0x80040E5B: IRowsetUpdate · deferred-update row states · IRowsetChange::InsertRow.
Нужно найти другой код? Найти другой код состояния или ошибки.
