| Предыдущий | Следующий |
| SQLITE_E_CONSTRAINT_FOREIGNKEY | SQLITE_E_IOERR_FSYNC |
SQLITE_E_READONLY_DBMOVED
Что означает SQLITE_E_READONLY_DBMOVED
SQLITE_E_READONLY_DBMOVED (0x87AF0408) — База данных доступна только для чтения, поскольку её файл был перемещён.
Практическая граница результата — режим только чтения, перемещённая база; поэтому сначала нужно сопоставить первый отказ с фактическими параметрами операции, а не переустанавливать весь компонент «SQLite».
Диагностика и проверка результата
Для случая «база данных доступна только для чтения, поскольку её файл был перемещён» воспроизведите исходную операцию на минимальном объекте и меняйте только одно условие за запуск.
До изменений в области «режим только чтения, перемещённая база» зафиксируйте полный extended result code, SQL, параметры, режим journal, путь к базе и состояние транзакции.
Не потеряйте данные PRAGMA data_version;: без них трудно отделить тему «режим только чтения, перемещённая база» от последующего сбоя.
PRAGMA data_version;
После исправления повторите тот же вызов на прежних данных; у результата 0x87AF0408 должен измениться первый неуспешный этап, а не только последующее сообщение.
Документация для результата 0x87AF0408: коды результатов и ошибок SQLite · SQLite: Online Backup API · режим Write-Ahead Logging SQLite.
Нужно найти другой код? Найти другой код состояния или ошибки.