Android-аудит Androidite

В настоящее время у меня есть таблица с именем User, которая имеет столбец id, который создается как

'INTEGER PRIMARY KEY'

Допустим, я создал двух пользователей, поэтому таблица имеет идентификаторы 1 и 2

Если я удалю второго пользователя и создаю третий, то id будет 2, мне нужно, чтобы это было 3

Таким образом, похоже, что Android выбирает следующий доступный идентификатор, как я могу изменить его на более похожий на порядковый номер?

С уважением

Solutions Collecting From Web of "Android-аудит Androidite"

Сделать INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL . Вот что говорят документы :

Если столбец имеет тип INTEGER PRIMARY KEY AUTOINCREMENT, тогда … ROWID, выбранный для новой строки, по крайней мере один больше, чем самый большой ROWID, который когда-либо существовал в той же таблице.

Поведение, выполняемое ключевым словом AUTOINCREMENT, существенно отличается от поведения по умолчанию. При использовании AUTOINCREMENT в строках с автоматически выбранными ROWID гарантируется наличие ROWID, которые ранее никогда не использовались одной таблицей в той же базе данных. И автоматически генерируемые ROWID гарантированно будут монотонно увеличиваться.

SQLite AUTOINCREMENT – это ключевое слово, используемое для автоматического увеличения значения поля в таблице. Мы можем автоматически увеличивать значение поля, используя ключевое слово AUTOINCREMENT при создании таблицы с определенным именем столбца, чтобы автоматически увеличивать ее.

Ключевое слово AUTOINCREMENT может использоваться только с полем INTEGER. Синтаксис:

Основное использование ключевого слова AUTOINCREMENT выглядит следующим образом:

 CREATE TABLE table_name( column1 INTEGER AUTOINCREMENT, column2 datatype, column3 datatype, ..... columnN datatype, ); 

Пример см. Ниже: Рассмотрим таблицу COMPANY которая будет создана следующим образом:

 sqlite> CREATE TABLE TB_COMPANY_INFO( ID INTEGER PRIMARY KEY AUTOINCREMENT, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); 

Теперь вставьте следующие записи в таблицу TB_COMPANY_INFO :

 INSERT INTO TB_COMPANY_INFO (NAME,AGE,ADDRESS,SALARY) VALUES ( 'MANOJ KUMAR', 40, 'Meerut,UP,INDIA', 200000.00 ); 

Теперь выберите запись

 SELECT *FROM TB_COMPANY_INFO ID NAME AGE ADDRESS SALARY 1 Manoj Kumar 40 Meerut,UP,INDIA 200000.00