Ошибки · Решение
SQLite SQLITE_CORRUPT (11): SQLite обнаружил повреждение базы
Файл не соответствует ожидаемым внутренним инвариантам SQLite; продолжать обычные записи без backup опасно.
Короткий ответ
SQLITE_CORRUPT (11) означает, что SQLite обнаружил повреждение структуры database file. Сверьте код с официальной поддержкой производителя и выполните только безопасные шаги.
Что означает ошибка
Файл не соответствует ожидаемым внутренним инвариантам SQLite; продолжать обычные записи без backup опасно.
Возможные причины
- Аппаратный/storage сбой повредил страницы.
- Файл менялся неподдерживаемым способом или несколькими несовместимыми VFS.
- Ошибка приложения/расширения привела к повреждению, хотя это значительно реже.
Что проверить
- Сделайте копию повреждённого файла до экспериментов.
- Запустите `PRAGMA integrity_check` на копии, если база читается.
- Проверьте OS/storage logs и наличие исправной backup.
Безопасные шаги
- Предпочтительно восстановите данные из проверенной backup.
- Если backup нет, используйте официальные recovery-подходы на копии, а не на единственном оригинале.
- После восстановления устраните причину corruption до возврата записи.
Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.
Когда нужен сервис
- При SQLITE_CORRUPT на критичной базе привлеките специалиста по восстановлению и сохраните исходный файл неизменным.
Похожие ошибки
- /errors/sqlite-busy-5/
- /errors/sqlite-locked-6/
- /errors/sqlite-readonly-8/
Что учитывать
Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.
Официальный источник
Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.