自动删除SQLite数据库中的条目(android)

时间:2012-07-15 22:30:45

标签: android database eclipse sqlite

如何在创建新行时告诉我的数据库自动删除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);
}

1 个答案:

答案 0 :(得分:1)

如果您要删除ID最小的“最旧”行,请使用this answer中的Rolling rows in SQL table

然而,SQLite表具有最大行ID数。达到此限制后,使用integer primary key autoincrement的表格将搜索旧的未使用的行ID以进行新插入。这可能导致最新的行具有最低行id(并且首先被删除)。

了解此限制通常为9223372036854775807.如果您希望在智能手机应用中超过这么多插入次数:

  1. 你疯了。
  2. 您可以在触发器中使用时间戳。