| Предыдущий | Следующий |
| SQLITE_E_ROW | SQLITE_E_BUSY_RECOVERY |
SQLITE_E_DONE
Что означает SQLITE_E_DONE
SQLITE_E_DONE (0x87AF0065) — sqlite3_step() завершила выполнение подготовленного выражения и больше не вернёт строк.
Это SQLITE_DONE (101), нормальный результат sqlite3_step() после последней строки либо успешного выражения, не возвращающего строки.
Что проверить
- Для SELECT прекращайте вызовы sqlite3_column_* после перехода от ROW к DONE.
- Для INSERT/UPDATE/DELETE проверяйте число изменений и состояние транзакции отдельно: DONE говорит о завершении выражения, а не о фиксации всей транзакции.
- Сбрасывайте подготовленное выражение или вызывайте sqlite3_finalize() согласно жизненному циклу приложения.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.