【发布时间】:2011-11-01 22:13:09
【问题描述】:
我正在构建一个带有数据库的 iPhone 应用程序(很可能我会第一次使用 Core Data,但根据您在此处的回答,我仍然会使用 SQLite)。
此数据库的内容应定期从某些在线存储(最有可能是 MySQL 数据库)更新。
由于初始数据库相当大,它将位于应用程序中,因此用户无需下载,因此更新将相当小,因此可以下载。您可以看到“Delta”更新是必须的(每次下载整个数据集只是太多数据)。更新将包括一些新记录,并最终对现有记录进行一些更正
本地数据库将有一些表/实体(它们之间有很多关系)需要更新,这些表/实体将是只读的 (*)。将有另外几个表/实体,用户可以在其中输入 cmets(读/写),但他们永远不必更新,这是私人用户数据。事实上,我有时会创建一个仅具有 1-1 关系的额外表,以保持良好分离(数据集表/实体与 cmets 表/实体)。
有人可以为我提供一种在线生成包含数据库中所有更改的文件的方法,该文件可以下载到手机并有效且正确地解析,以便应用这些更改/新记录。我一直在思考类似于 Rails 用来维护其数据库的迁移的东西,但似乎找不到任何看起来干净且高性能的东西。牢记不同表/实体之间的数据关系非常重要,那是我的灵感失败...
(*) 开始时只读,稍后用户将能够添加记录并对其进行编辑。他将永远无法编辑现有记录,并且他自己的记录不需要返回服务器。
【问题讨论】:
标签: iphone database core-data sync