我有一个关于删除 sql 数据库中的行的问题。我的方法使用来自 onItemClick 侦听器的 id 来识别单击的对象,但是一旦删除了一个项目,这些 id 就不再起作用,因为它们与数据库中的 id 行不匹配。这是一个示例来阐明我的意思:
Android中的ListView
- 项目 1 (id 0)
- 项目 2 (id 1)
- 项目 3 (id 2)
数据库(id 用 +1 更正以匹配)
- 项目 1 (id 1)
- 项目 2 (id 2)
- 项目 3 (id 3)
删除后
列表显示
- 项目 1 (id 0)
- 项目 3 (id 1)
数据库
- 项目 1 (id 1)
- 项目 3 (id 3)
现在单击 Item 3 时,选择了数据库中 id 为 2 的条目,但它不再存在,这会导致异常
我正在寻找一种方法来恢复数据库自动递增 id 列
- 项目 1 (id 1)
- 项目 3 (id 2)
编辑:经过一些研究,我不得不得出结论,这是不可能的。我将尝试找到类似唯一标识符的东西,它与请求对象的当前 rowid 一起存储在单独的表中。