【问题标题】:Converting MySQL to SQLite for iOS Device to download and use it possible?将 MySQL 转换为 SQLite for iOS 设备以下载和使用它可能吗?
【发布时间】:2011-12-22 07:46:40
【问题描述】:

我正在使用大型数据库,我需要我的应用能够离线工作。

我是 iOS Developer 的新手,我已经阅读了很多书籍中的教程,但仍然没有经验。

我的设置是:

  1. PHP&MySQL 网络服务器

  2. 只能在局域网中使用,不能上网。

我的应用应该是:

  1. 从服务器下载最新内容并存储到设备内存(或其他)

  2. 能够在设备离线时对我下载的那些数据进行 CRUD(这是因为当用户不在 Wifi 区域中时,所以我计划让它离线)

  3. 在 Wifi 区域时,我可以将更改更新回服务器

我的第一个计划是:

通过 JSON 格式从 PHP 服务器检索我的数据并将其存储到 iOS 核心数据,然后通过 NSUrl 发布或其他方式仅将更改上传回服务器。我不确定

我的第二个计划是:

我想将 MySQL 转换为 SQLite,因此它应该是 1 个文件并将其下载到 iOS,因此工作负载在服务器上而不是在 iOS 设备上,并使用相同的 NSUrl 将其发布回服务器并进行更新。


我的应用流程应该是这样的:

开始:

...

  1. 检查是否有数据需要上传?

    1.1 是的,上传数据:转到:2

    1.2 否:转到:2

  2. 将数据库下载到设备内存中。

  3. 用户登录。

...

我在想我应该继续我的第二个解决方案,我认为从 MySQL 到 SQLite 的转换并不太难,但是我如何检查 iOS 设备何时请求文件并且不知道该文件转换完成了吗?

有更好的方法吗?

【问题讨论】:

    标签: php ios mysql sqlite


    【解决方案1】:

    您应该将数据库下载为 json 数组,将其写入本地 sqlite 数据库,然后将更改同时写入另一个表。当您需要上传更改时,请从仅包含更改的重复表中读取并更新服务器上的 mysql 数据库。您可以使用 FMDB(见下文)来帮助使用 ios 上的 sqlite。

    https://github.com/ccgus/fmdb

    【讨论】:

      猜你喜欢
      • 2013-01-12
      • 1970-01-01
      • 2015-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-25
      • 2014-09-27
      • 1970-01-01
      相关资源
      最近更新 更多