В SQLite есть таблица с именем SQLITE_SEQUENCE, которая отслеживает наибольшее значение RowId
, которое имеет таблица. Вы можете делать вставки, обновления и удаления в этой таблице. Например, чтобы имитировать функции, аналогичные SQL-выражению TRUNCATE TABLE, вы могли бы что-то вроде:
DELETE FROM MyTableName;
DELETE FROM SQLITE_SEQUENCE WHERE NAME = 'MyTableName';
В приведенном выше примере все данные из MyTableName удаляются, а идентификатор строки с автоматическим приращением сбрасывается путем удаления значения из таблицы SQLITE_SEQUENCE. См. Документацию для AUTOINCREMENT для получения дополнительной информации.