我在dataBase中有4个EditTexts
我删除了第二个
数据库编号为1,3,4
我现在希望它重新编号为1,2,3。
我看了很多解决方案 但我找不到完整的答案.. 我不知道应该写什么 我尝试了以下代码。 但它没有发生
db.delete("SQLITE_SEQUENCE","NAME = ?",new String[]{TABLE_NAME});
有没有人有完整的答案?
答案 0 :(得分:1)
通常,这是数据库的糟糕设计。对于一段数据,ID应该是一致的,无论其对等点如何 - 它不应该因为另一行被删除而波动。
话虽这么说,你总是可以使用UPDATE
语句来SET ID = ID-1 WHERE ID > (the ID of the row you deleted)
。这会奏效。我不推荐这种方法,但你可以。
答案 1 :(得分:0)
您可以通过执行SQLite VACUUM命令来恢复此空间。
删除后调用db.execSQL("VACUUM")