如何在创建新行时告诉我的数据库自动删除ID最低的条目? 我希望在表格中有十行以上时完成此操作。
这是我的createEntry方法:
public long createEntry(String latitude, String longitude) {
// TODO Auto-generated method stub
ContentValues cv = new ContentValues();
cv.put(KEY_LATITUDE, latitude);
cv.put(KEY_LONGITUDE, longitude);
return myDatabase.insert(DATABASE_TABLE, null, cv);
}
答案 0 :(得分:1)
如果您要删除ID最小的“最旧”行,请使用this answer中的Rolling rows in SQL table。
然而,SQLite表具有最大行ID数。达到此限制后,使用integer primary key autoincrement
的表格将搜索旧的未使用的行ID以进行新插入。这可能导致最新的行具有最低行id(并且首先被删除)。
了解此限制通常为9223372036854775807.如果您希望在智能手机应用中超过这么多插入次数: