Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как убедиться, что SQLite никогда не создает строку с одним и тем же идентификатором дважды?

Автор вопроса: laurentОтветов: 1

У меня есть таблица SQLite, которая выглядит так:

CREATE TABLE Cards (id INTEGER PRIMARY KEY, name TEXT)

Поэтому каждый раз, когда я создаю новую строку, SQLite автоматически присваивает ей уникальный идентификатор.

Однако, если я удалю строку, а затем создам новую строку, новая строка будет иметь идентификатор ранее удаленной строки.

Как я могу убедиться, что этого не произойдет? Можно ли как-то заставить SQLite всегда давать действительно уникальные идентификаторы, которые даже отличаются от ранее удаленных строк?

Я могу сделать это в коде, но я бы предпочел, чтобы SQLite сделал это, если это возможно. Есть идеи?

sqliteuniqueidentifier

Ответы

Ответ 1 · рейтинг 2 · ribram

Посмотрите на автоинкремент (АВТОИНКРЕМЕНТ ПЕРВИЧНОГО КЛЮЧА INTEGER). Это гарантирует это, и если запрос не может быть выполнен, он завершится с ошибкой SQLITE_FULL.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы