| Предыдущий | Следующий |
| DB_E_CANNOTFREE | DB_E_GOALREJECTED |
DB_E_NEWLYINSERTED
Что означает DB_E_NEWLYINSERTED
DB_E_NEWLYINSERTED означает, что OLE DB provider не может однозначно вернуть идентификатор или позицию только что вставленной строки в текущем rowset. Старый HROW не всегда является стабильной identity новой записи.
Что проверить
- Сохраните способ insert, requested return columns и свойства rowset.
- Проверьте visibility newly inserted rows и поддержку provider-specific механизма возврата generated keys.
- Не переносите HROW/HCHAPTER между разными rowset objects и после операций, меняющих их lifetime.
- Если приложению нужна identity новой записи, используйте документированный output/returning mechanism provider, а не предположение о позиции строки.
Как подтвердить исправление
Это rowset state, а не общий сбой вставки. Корректность подтверждается повторным получением строки предусмотренным provider способом после завершения insert/resync, без использования недействительного положения курсора.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.