Что означает код HRESULT 0x87AF000A (SQLITE_E_IOERR)?

 
Предыдущий Следующий
SQLITE_E_INTERRUPT SQLITE_E_CORRUPT

SQLITE_E_IOERR

SQLITE_E_IOERR — представление службой результата SQLite SQLITE_IOERR: подсистема базы данных получила ошибку ввода-вывода от VFS или слоя файловой системы. Базовый код намеренно общий; полезным диагностическим значением является расширенный код результата SQLite.

До повтора запишите расширенный код результата, сообщение SQLite, путь базы данных, режим журнала и ошибку операционной системы. Не удаляйте файлы -wal, -shmили журнала отката из активной базы данных в качестве первого действия.

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

  • Включите или получите расширенный код результата с помощью sqlite3_extended_errcode() , чтобы определить проблемную операцию VFS.
  • Проверяйте каталог базы данных, а не только основной файл: SQLite могут требоваться журнал, WAL, общая память и временные файлы.
  • Исследуйте события хранилища, файловой системы, разрешений и подключения около первой ошибки; общий код ввода-вывода не доказывает повреждение базы данных.
sqlite3_extended_errcode(db)
sqlite3_errmsg(db)

SQLite: коды результатов и ошибок

SQLite: расширенные коды результатов

SQLite: интерфейс VFS

SQLite: причины повреждения файлов баз данных


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