Что означает код HRESULT 0x80040E98 (DB_E_RESOURCEEXISTS)?

 
Предыдущий Следующий
DB_E_TIMEOUT DB_E_DUPLICATECONSTRAINTID

DB_E_RESOURCEEXISTS

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

DB_E_RESOURCEEXISTS (0x80040E98) — Объект нельзя создать по этому URL, поскольку объект с таким URL уже существует.

При результате 0x80040E98 граница диагностики проходит внутри подсистемы «OLE DB», в области «объекты команд, rowset, accessors, свойства и привязки поставщика». Здесь сообщение «объект нельзя создать по этому url, поскольку объект с таким url уже существует» связано с темой «ресурс, существующий объект».

Что проверить и как подтвердить исправление

Не начинайте с общего сброса компонента: сопоставьте первый отказ с фактическими параметрами операции. При 0x80040E98 и условии «объект нельзя создать по этому url, поскольку объект с таким url уже существует» установите идентичность и владельца уже существующего объекта; не создавайте второй экземпляр, пока не проверен жизненный цикл первого.

Чтобы локализовать 0x80040E98, соберите интерфейс и метод OLE DB, CLSID и версию поставщика, состояние command/rowset, предоставленные свойства и все записи объекта ошибок OLE DB; отдельно запишите HRESULT, DBBINDURLSTATUS, CLSID, IID, ID. Затем для 0x80040E98 сравните исправный и неуспешный запуск в части «ресурс, существующий объект», меняя одно условие за раз.

Для 0x80040E98 применяйте исправление на границе первого отказа: исправляйте состояние конкретного объекта, маску флагов, описание привязок или поддерживаемое поставщиком свойство; не сводите результат к общей «ошибке базы данных». Сообщение «объект нельзя создать по этому url, поскольку объект с таким url уже существует» при 0x80040E98 не следует подавлять общей обработкой исключения.

После исправления повторите тот же вызов на прежних данных; у результата 0x80040E98 должен измениться первый неуспешный этап, а не только последующее сообщение.

Документация для результата 0x80040E98: direct binding in OLE DB · OLE DB root binder object · OLE DB row objects.


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