Site icon EfmSoft

Что означает код HRESULT 0x87AF0613 (SQLITE_E_CONSTRAINT_PRIMARYKEY)?

 
Предыдущий Следующий
SQLITE_E_IOERR_TRUNCATE SQLITE_E_IOERR_FSTAT

SQLITE_E_CONSTRAINT_PRIMARYKEY

Что означает SQLITE_E_CONSTRAINT_PRIMARYKEY

SQLITE_E_CONSTRAINT_PRIMARYKEY (0x87AF0613) — SQLite отклонила изменение из-за нарушения ограничения PRIMARY KEY.

Этот HRESULT представляет основной или расширенный код результата SQLite. Для диагностики сохраняйте полный SQLite-код, SQL-выражение, параметры, состояние транзакции и соединения, режим журнала и исходную ошибку ОС; один внешний HRESULT без этих данных часто скрывает различие между блокировкой, ограничением и ошибкой ввода-вывода.

Это SQLITE_CONSTRAINT_PRIMARYKEY: INSERT/UPDATE создаёт значение первичного ключа, конфликтующее с существующей строкой или правилами ключа.

Что проверить

  • Сохраните значения столбцов первичного ключа и SQL-выражение.
  • Проверьте, ожидалась ли операция вставки новой строки или обновления существующей.
  • Если нужна идемпотентность, используйте явно выбранную UPSERT-политику конфликта вместо слепого повтора INSERT.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version