Site icon EfmSoft

Что означает код HRESULT 0x80040E17 (DB_E_DUPLICATEDATASOURCE)?

 
Предыдущий Следующий
DB_E_DIALECTNOTSUPPORTED DB_E_CANNOTRESTART

DB_E_DUPLICATEDATASOURCE

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

DB_E_DUPLICATEDATASOURCE (0x80040E17) — Объект источника данных невозможно создать: источник с таким именем уже существует.

В подсистеме «OLE DB» результат 0x80040E17 относится к области «объекты команд, rowset, accessors, свойства и привязки поставщика». Описание «объект источника данных невозможно создать: источник с таким именем уже существует» сужает проверку до темы «дубликат, данные, источник».

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

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

Диагностика 0x80040E17 должна включать интерфейс и метод OLE DB, CLSID и версию поставщика, состояние command/rowset, предоставленные свойства и все записи объекта ошибок OLE DB; отдельно запишите HRESULT, CLSID, ID, IDs, HACCESSOR. Для темы «дубликат, данные, источник» при 0x80040E17 важны значения именно на первом отказе, а не после обработки ошибки верхним уровнем.

Исправляя 0x80040E17, меняйте только подтверждённую причину: исправляйте состояние конкретного объекта, маску флагов, описание привязок или поддерживаемое поставщиком свойство; не сводите результат к общей «ошибке базы данных». Результат 0x80040E17 с описанием «объект источника данных невозможно создать: источник с таким именем уже существует» должен исчезнуть на исходных данных без обхода штатной проверки.

Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0x80040E17, а заведомо неверный вход отклоняется на ожидаемой границе.

Документация для результата 0x80040E17: overview of OLE DB · OLE DB interfaces · IErrorRecords.


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

Exit mobile version