我正在开发一个使用SQLITE作为 DB 的 android 2.3.3 应用程序。我目前正在使用sqlite中的内部ROWID来更新我的行并检索数据。我最近发现我的行的内部 ROWID 有时会发生变化。我不知道这是什么原因。问题是我正在缓存这个 ROWID 以便稍后执行更新操作。所以如果 ROWID 发生变化,我可能会更新错误的行。
我认为有两种解决方案。
(1)防止内部ROWID发生变化(我不知道如何实现)。还有人可以让我知道是什么导致了这个ROWID变化吗?
(2) 定义一个 INTEGER PRIMARY KEY 列并将其用作 ROWID。
让我知道是否可以阻止 rowid 更改,否则我将采用第二种解决方案。
谢谢!