我有一个 Web 服务和 sqlite 数据库。在此,Web 服务将用于在数据库中存储数据。现在我想将同步功能包括在内 - 每当应用程序在那时启动时,数据库将开始通过 Web 服务加载其表的数据。
现在,当我更新我的网络服务一段时间后,数据库将相应更新。我的问题是,对于此更新,我必须遵循哪些最佳实践。我是否应该清除整个数据库并再次开始添加所有行(我知道这将花费很多时间)但如果不是这样,那么我的数据库将如何仅添加来自 Web 服务的特定数据?
谢谢你。
我建议你的是:
因此,您将始终在数据库中找到所有新数据。
下载和更新整个服务器数据将被证明是昂贵的。它将使用更多带宽并证明对您的客户来说成本高昂。与其推送整个负载(即使是小更新),不如发送一个增量。我会建议你维护版本信息。
希望有帮助。
我建议您使用RestKit的出色核心数据支持。
通过使用RKEntityMapping
,您可以将远程对象从 JSON 或 XML 直接映射到数据库中的核心数据实体。
RestKit 将自动为您维护数据库,根据您的 Web 服务插入和更新条目。(根据我的经验,我发现删除对象需要一些额外的工作,具体取决于您的 Web 服务的 RESTful 程度)。
RestKit 确实有一个学习曲线,但它非常值得:现在已经部署了几次,这绝对是一个比手动编写自己的 SQLite/Web 服务同步代码更好的解决方案。
首先,您需要将所有 Web 服务内容设置到您的 SQLITE 中。您想要显示的内容从 SQLITE 获取该数据。并对那个 sqlite 表执行操作,当所有这些完成后,您需要进行的更改将其保存到 Web 服务中。
按照这种方式。