Что означает код HRESULT 0x00040ED9 (DB_S_PROPERTIESCHANGED)?

 
Предыдущий Следующий
DB_S_LOCKUPGRADED DB_S_ERRORSOCCURRED

DB_S_PROPERTIESCHANGED

Что означает результат

DB_S_PROPERTIESCHANGED — успешный результат OLE DB с уточнением: запрошенная операция выполнена, но поставщик изменил одно или несколько свойств на поддерживаемые значения. Это не общая ошибка базы данных и не повод автоматически откатывать уже созданный объект.

Что проверить

  • Сразу после вызова прочитайте фактические значения свойств у созданного command, rowset или другого объекта.
  • Для каждого свойства сохраните его DBPROPID, набор свойств и DBPROPSTATUS; именно здесь видно, что поставщик принял, изменил или проигнорировал.
  • Сравните запрошенное и фактическое значение. Особенно важно отличать обязательное свойство от предпочтительного: для обязательного изменение может нарушать контракт вызывающего кода.
  • Учитывайте версию и CLSID поставщика: допустимые диапазоны и сочетания свойств зависят от конкретной реализации OLE DB.

Как действовать

Продолжайте работу, если скорректированные значения совместимы с требованиями приложения. Если нет — сформируйте другой набор свойств либо измените обязательность конкретного DBPROP. Повтор того же вызова с тем же набором обычно снова приведёт к той же корректировке.

Технические ссылки


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