如何更新Ormlite中的表sqlite_sequence?我只需要更新seq。我如何通过ORMLite获取该表格?如何重置sqlite中的自动增量序列号
编辑
我找不到ORLite工具来做到这一点,所以不是我用简单的SQLite查询。在我的类扩展OrmLiteSqliteOpenHelper我使用SQLiteDatabase进行更新。
EDIT2;)
在项目中,我坚持一流的课程和班级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;
...
}
现在,当我添加新的经验教训,id为增量。例如
id = 1 Math
id = 2 English
id = 3 Medicine
和weekDefinition:
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添加此行到sqlite_sequence(当使用自动增量)
rowId = 1 name = lesson seq = 3
rowId = 2 name = weekDefinition seq = 12
现在,我删除表课和WeekDefinition所有行。在此之后,Lesson和WeekDef为空,但sqlite_sequence仍然相同。这是问题,因为ID在表中的教训,从值4开始(SEQ从sqlite_sequence的教训,并添加1):
id = 4 Math
id = 5 English
id = 6 Medicine
和weekDefinition
id = 13 lesson_id = 1 nr = 20
id = 14 lesson_id = 1 nr = 22
id = 15 lesson_id = 2 nr = 32
和教训ID = 4,数学我应该得到weekDefinitios,但在周定义lesson_id有价值只有1至3 这是我的问题。我需要“重置”sqlite_sequence表(或有更好的解决方案?)
您能否重新提出您的问题并提供更多详情Bandzio。我不知道你在这里问什么。什么是“sqlite_sequence”?您是否试图从数据库中的表中获取序列号?因此,您持久保存的对象_only_有生成的ID吗? – Gray 2011-04-08 12:26:57
Bandzio,你真的应该接受其中的一个答案;两者都很好,已经有6个多月的时间了 – Noah 2011-10-18 12:25:24