限制会议室数据库中的行数
2022-09-01 07:27:45
如何通过删除行中最旧的项目并插入最新的项目来限制Android会议室数据库中的行数?
我猜这是向数据库添加项目时的标准查询?
编辑:我想将数据库表限制为最大行计数为20。如果达到该限制,我们将删除最旧的项目,并通过将当前行计数保持在 20 来插入新项目。
如何通过删除行中最旧的项目并插入最新的项目来限制Android会议室数据库中的行数?
我猜这是向数据库添加项目时的标准查询?
编辑:我想将数据库表限制为最大行计数为20。如果达到该限制,我们将删除最旧的项目,并通过将当前行计数保持在 20 来插入新项目。
下面是示例解决方案:
查询是:
@Query("SELECT * FROM user LIMIT :limit OFFSET :offset")
User[] loadAllUsersByPage(int limit,int offset);
在这里,它将根据限制和偏移量给出用户列表。
如果它将从表中返回前 2 行。loadAllUsersByPage(2,0)
如果它将从表中返回第 2 行和第 3 行。loadAllUsersByPage(2,1)
但如果那样的话,它将从表中提供前10行。loadAllUsersByPage(-1,10)
我认为您可以将数据插入到表中,然后删除除最后20行之外的所有行(限制)
若要删除,可以使用以下查询
从 ID 不在的表名中删除(从表名中选择 ID 按 ID 排序 DESC 限制 20)
在这种情况下,id 是设置为自动递增的主键。如果您按日期存储日期,也可以使用日期作为键