| Предыдущий | Следующий |
| SQLITE_E_IOERR_TRUNCATE | SQLITE_E_IOERR_FSTAT |
SQLITE_E_CONSTRAINT_PRIMARYKEY
Что означает SQLITE_E_CONSTRAINT_PRIMARYKEY
SQLITE_E_CONSTRAINT_PRIMARYKEY (0x87AF0613) — Нарушено ограничение первичного ключа.
Практическая граница результата — ограничение базы, первичный ключ; поэтому сначала нужно сопоставить первый отказ с фактическими параметрами операции, а не переустанавливать весь компонент «SQLite».
Диагностика и проверка результата
В сценарии «нарушено ограничение первичного ключа» воспроизведите исходную операцию на минимальном объекте и меняйте только одно условие за запуск.
При воспроизведении темы «ограничение базы, первичный ключ» обязательно сохраните полный extended result code, SQL, параметры, режим journal, путь к базе и состояние транзакции.
Для контрольного повтора сохраните следующие данные: SQLITE_CONSTRAINT_PRIMARYKEY, SELECT sql FROM sqlite_master WHERE type = 'table' AND name = 'your_table';; они относятся к теме «ограничение базы, первичный ключ».
SELECT sql FROM sqlite_master WHERE type = 'table' AND name = 'your_table';
После исправления повторите тот же вызов на прежних данных; у результата 0x87AF0613 должен измениться первый неуспешный этап, а не только последующее сообщение.
Документация для результата 0x87AF0613: SQLite: SQLITE_CONSTRAINT_PRIMARYKEY · SQLite: PRIMARY KEY Constraints · SQLite: Conflict Resolution.
Нужно найти другой код? Найти другой код состояния или ошибки.