如何清除数据库中的旧项目,并避免下次在android上添加它们?

时间:2011-03-24 12:36:40

标签: android database sqlite listview

我有ListView,它显示来自SQLite DB的记录(电影)。 除了其他字段之外,其他每个记录都有movieId(唯一)和date_added字段。

我的同步作业从网站获取新电影并将其添加到数据库。同时它应该删除超过3天前添加的电影。 但是,如果我只是从数据库中删除它们,那么可以在同步期间再次添加它们(因为数据库中不存在具有此类movieId的电影)。

避免这种情况的最佳方法是什么?如果我不删除整个记录就可以了,但除了movieId之外,我的所有字段都会归零吗?或者,是否有另一种更正确的方法?

2 个答案:

答案 0 :(得分:1)

如果您不想显示超过3天前添加的电影,则可能需要将它们保存在数据库中。

如果您要保存有关每部电影的大量信息,特别是如果您要存储图像或其他数据,那么您可能希望将记录清零以节省空间,否则我不认为这是一个大问题。我想我不知道你的确切效果,但我喜欢保持数据。

您唯一的更改不是使用同步作业来删除旧条目,而是必须使用列表适配器仅在其查询中获取较新的条目。

答案 1 :(得分:0)

只留下movieId一直有效,直到重新安装。我更愿意存储这样的数据,例如谁在服务器上下载了什么,并在同步过程中对其进行过滤。