| Предыдущий | Следующий |
| DB_E_ABORTLIMITREACHED | DB_E_CANTTRANSLATE |
DB_E_ROWSETINCOMMAND
Что означает DB_E_ROWSETINCOMMAND
DB_E_ROWSETINCOMMAND (0x80040E32) — Объект команды нельзя клонировать, если его дерево команд содержит один или несколько наборов строк.
В подсистеме «OLE DB» результат 0x80040E32 относится к области «объекты команд, rowset, accessors, свойства и привязки поставщика». Описание «объект команды нельзя клонировать, если его дерево команд содержит один или несколько наборов строк» сужает проверку до темы «rowsetincommand».
Что проверить и как подтвердить исправление
В первую очередь сопоставьте первый отказ с фактическими параметрами операции. Для 0x80040E32 в сценарии «объект команды нельзя клонировать, если его дерево команд содержит один или несколько наборов строк» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.
Для воспроизведения 0x80040E32 сохраните интерфейс и метод OLE DB, CLSID и версию поставщика, состояние command/rowset, предоставленные свойства и все записи объекта ошибок OLE DB; отдельно запишите HRESULT, CLSID, ID, HACCESSOR, HROW. По теме «rowsetincommand» для 0x80040E32 сравните эти данные с исправным запуском до очистки журналов или пересоздания объекта.
Для 0x80040E32 применяйте исправление на границе первого отказа: исправляйте состояние конкретного объекта, маску флагов, описание привязок или поддерживаемое поставщиком свойство; не сводите результат к общей «ошибке базы данных». Сообщение «объект команды нельзя клонировать, если его дерево команд содержит один или несколько наборов строк» при 0x80040E32 не следует подавлять общей обработкой исключения.
Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0x80040E32, а заведомо неверный вход отклоняется на ожидаемой границе.
Документация для результата 0x80040E32: OLE DB commands · ICommand · OLE DB command states.
Нужно найти другой код? Найти другой код состояния или ошибки.