Como posso redefinir um número de sequência de incremento automático no sqlite
Como atualizar a tabela sqlite_sequence no Ormlite? Eu só preciso de atualização seq. Como posso obter essa tabela via ORMLite?
EDITA
Não consigo encontrar a ferramenta ORLite para fazer isso, então, em vez disso, uso uma consulta sqlite simples. Na minha classe estende OrmLiteSqliteOpenHelper, uso SQLiteDatabase para fazer essa atualizaçã
EDIT2;)
No meu projeto, persisto as classes Lesson e WeekDefinition.
class Lesson{
@DatabaseField(generatedId=true)
private int id;
...
}
class WeekDefinitions{
@DatabaseField(generatedId=true)
private int id;
@DatabaseField(foreign=true, columnName="lesson_id")
private Lesson lesson;
...
}
Agora, quando adiciono novas lições, o id é incrementado. Por exempl
id = 1 Math
id = 2 English
id = 3 Medicine
e na semanaDefinição:
id = 1 lesson_id = 1 nr = 20
id = 2 lesson_id = 1 nr = 22
id = 3 lesson_id = 2 nr = 32
...
id = 12 lesson_id = 3 nr = 3
SQLite adicione esta linha ao sqlite_sequence (quando usar autoincrement)
rowId = 1 name = lesson seq = 3
rowId = 2 name = weekDefinition seq = 12
Agora, excluo todas as linhas das tabelas Lesson e WeekDefinition. Lesson e WeekDef ficam vazios depois disso, mas sqlite_sequence ainda é o mesmo. E isso é problema porque o id na lição de tabela começa com o valor 4 (seq de sqlite_sequence para a lição e adicione 1):
id = 4 Math
id = 5 English
id = 6 Medicine
and weekDefinition
id = 13 lesson_id = 1 nr = 20
id = 14 lesson_id = 1 nr = 22
id = 15 lesson_id = 2 nr = 32
e para a lição id = 4, Math, eu deveria receber weekDefinitios, mas em weekDefinitions o lições_id tem valor apenas de 1 a 3 E esse é o meu problema. Preciso "redefinir" a tabela sqlite_sequence (ou existe uma solução melhor?)