| Предыдущий | Следующий |
| SQLITE_E_IOERR_DIR_FSYNC | SQLITE_E_IOERR_TRUNCATE |
SQLITE_E_CONSTRAINT_NOTNULL
Что означает SQLITE_E_CONSTRAINT_NOTNULL
SQLITE_E_CONSTRAINT_NOTNULL — расширенный SQLite result, который означает нарушение NOT NULL constraint. Конкретная column получила NULL при INSERT или UPDATE, где schema запрещает такое значение.
Что проверить
- Сохраните SQL statement и bindings без секретных данных, особенно параметры, которые реально привязаны как NULL.
- Проверьте отличие между отсутствующим binding и пустой строкой: это разные значения.
- Если рассчитываете на DEFAULT, убедитесь, что column действительно опущена из INSERT, а не явно получает NULL.
Как исправить
Передавайте допустимое значение либо изменяйте schema только если NULL действительно соответствует модели данных. Повтор той же statement без изменения bindings воспроизводит constraint deterministically.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
