如何更新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