Когда я очищаю свою таблицу, я также хотел бы сбросить номер строки автоинкремента. Я нашел несколько сообщений, которые рекомендовали этот код:
DeleteAll<mytable>();
Execute("update sqlite_sequence set seq = 0 where name = 'mytable';");
Когда я запускаю его, я не получаю никаких ошибок, но rowid не сбрасывается. Я также пробовал:
Execute("delete from sqlite_sequence where name = 'mytable';");
... с тем же результатом. Есть ли причуда с sqlite-net-pcl, из-за которой это не работает? Или я что-то упускаю?
Определение таблицы выглядит так:
public partial class mytable : IHasId
{
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
<other stuff deleted>
}
и IHasId:
public interface IHasId
{
int Id { get; set; }
}
(Не стреляйте в меня, я написал это в ответ, когда мог, что чизбургер был вещью. В то время это меня забавляло... И нет, стол на самом деле не называется mytable.)
Любая помощь будет принята с благодарностью. Спасибо!