如何将数据库信息保存到android中的文件?

时间:2011-05-18 21:28:19

标签: android database sqlite

我有一个使用预先存储数据库列出事件的应用程序。该应用程序允许人们通过在列isFavorite上设置“1”将这些事件保存到他们的收藏夹。然后,用户只能查看“收藏”事件列表,这些事件搜索所有具有isFavorite = 1的行。

如果事件发生了任何变化,或者我需要在列表中添加更多内容,我必须进行这些更改,然后将更新推送到完全覆盖表格的应用程序,清除他们的收藏夹。

有什么方法可以在升级时保存他们设置为收藏夹的所有事件的id列表,然后在加载新数据库之后,将该列表中的所有id设置为1用户不会丢失他们喜欢的数据吗?

如果还有其他更好的解决方法可以解决这个问题,我会非常感激,这对我来说是迄今为止最大的障碍。

3 个答案:

答案 0 :(得分:1)

我想,你有一个SQLiteOpenHelper级?必须扩展此类,然后提供两个函数:onCreate(在查询数据库时调用它并且它不存在(通常首先创建数据库))和onUpdate(其中在应该更新数据库结构时查询。)

onUpdate - 方法有一个SQLiteDatabase - Object参数,它是您的数据库。然后,您可以查询所需的信息,保存它们,然后创建新的数据库表。之后,您可以将保存的数据插回数据库。

答案 1 :(得分:0)

你不能在数据库设计中应对吗?拥有一个包含id的用户收藏夹表。只要这些id不改变升级肯定不会影响它吗?

答案 2 :(得分:0)

一种可能的解决方案是备份部分或全部数据库,以便以后恢复。我发现这个指南非常方便 http://www.screaming-penguin.com/node/7749

或者,您可以将其收藏夹保存为SharedPreferences。 http://developer.android.com/reference/android/content/SharedPreferences.html了解更多相关信息。