Что означает код HRESULT 0xC80004B1 (hrDatabaseDuplicate)?

 
Предыдущий Следующий
hrInTransaction hrDatabaseInUse

hrDatabaseDuplicate

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

hrDatabaseDuplicate (0xC80004B1) — база данных уже существует.

Это старый HRESULT-вариант результата ESE (Extensible Storage Engine, ESENT); в JET API соответствующее условие известно как JET_errDatabaseDuplicate.

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

  • Зафиксируйте путь базы, attachment-состояние, JET_DBID и владеющий им JET_SESID; идентификаторы ESE действительны только в своём экземпляре и сеансе.
  • Для detach/delete/schema операций проверьте открытые таблицы, другие сеансы и транзакции; при corruption/inconsistent сначала сохраните базу вместе с журналами для recovery.

Исходная формулировка

  • database creation selected a path or identity that already exists.
  • hrDatabaseAttached means an existing database is attached; this code is the duplicate-create boundary.
  • JetCreateDatabase, JetAttachDatabase, JetOpenDatabase, JetCloseDatabase, and JetDetachDatabase.
  • hrDatabaseCorrupted — the database cannot be trusted as a coherent ESE file or is unavailable in a way reported as corruption.

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


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