在iOS中,我有使用本地SQL和使用PHP访问的仅服务器SQL的经验。
我的问题是,我打算编写的应用程序将有一个本地数据库和一个远程数据库,这可能很常见。我计划基本上从服务器数据库中的某些表更新iOS应用程序。
我的问题是:是否有一种简单或常用的方法来比较给定表中的列列表,并将服务器中已更改或丢失的任何列复制到本地数据库?
例如,如果我有一个充满数据的表,然后在服务器上添加了一个新列,是否有一种标准方法让本地iOS数据库反映出新列?
我提出的想法是将两个数据库作为一个空白的新数据库启动,然后任何更改我在服务器上添加一个新的SQL脚本来更新本地数据库 - 然后,如果iOS设备检测到新的数据库修订版它会运行更新脚本,并且会添加任何遗漏的内容。我只是希望有更好的方法,因为这可能会变得混乱。
答案 0 :(得分:1)
如果您在双方都使用Sqlite,这对于未来的开发将是一个零风险选择,并且如果您开发自己的迁移系统(检查实体框架迁移或https://github.com/mocra/fmdb-migration-manager的想法),您可以简单地比较最新的迁移版本并相应地进行转移。在我的拙见中,这将是最明智的选择。
答案 1 :(得分:0)
您应该选择webservice来使用Server数据库更新iOS应用数据库。这将是非常简单有效的方式,Json和xml库也是解析数据的有效方法。如果您有进一步的疑问,请告诉我们!