2011-03-26 50 views
0

我有一个Android应用程序,它在第一次打开时向设备安装一个数据库(跨所有表约2000行)。用户可以对其进行较小的更改(仅限一列),并且仅在新版本发布时进行更新。不经常更新到Android数据库的最佳做法?

由于数据库/应用程序的性质,不可能将数据在线(还有)。

我假设我会用很多插入安装数据库(onCreate),然后每隔一段时间更新一次,然后在每个新版本中插入更多行(onUpdate?)。这个程序的最佳做法是什么?

  1. 我应该有模拟数据并在每次更新时插入每一个新行的XML(或其他结构)文件吗?
  2. 每次更新,我应该删除所有数据,或保持程序的onUpdate内()依赖于电流与新的数据库版本(例如:版本< X然后更新这些行,并添加这些... )?
  3. 用户可以为每一行更改一列(专用于,即用户)。将它存储在偏好文件中会更有意义吗?

使用部署的数据库对我来说是新手,所以任何帮助,将不胜感激!

谢谢!

回答

1

那么,我可以建议迁移方式。将数据版本保存在数据库中。使每个应用程序分发包含1.0到1.3.upd,1.3到1.4.upd等文件,以保存所有更新数据以转换到新版本的数据。

每个OnUpdate()应检查数据库中的数据版本,并检查它必须确定是否需要数据更新的* .upd文件列表。然后逐一应用必要的更新,每次增加db中的数据版本。

这就像VBulletin和XenForo论坛更新的工作。

相关问题