| Предыдущий | Следующий |
| 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: причины повреждения файлов баз данных
Нужно найти другой код? Найти другой код состояния или ошибки.