【问题标题】:iPhone Synchronizing SQLite with Windows Server DatabaseiPhone 将 SQLite 与 Windows Server 数据库同步
【发布时间】:2011-11-16 22:15:44
【问题描述】:

背景资料:

我一直在构建一个允许用户相互交互的应用程序,为应用程序发布 cmets/图像等,所有这些信息都会显示在我的应用程序的 FanWall 屏幕上。我通过 FBConnect 使用他们的 FaceBook 身份验证获取用户信息。

为了有效地更新 fanwall 屏幕,我想为我的应用程序创建一个本地 SQLite 数据库,其中包含用户 ID、他的个人资料图像、他的应用程序的 cmets 等。我的 SQL 服务器数据库中有所有这些信息,但不知道如何将此信息与 iPhone 的 SQLite 数据库同步。

我的问题:

我正在使用 ASIHTTPRequest 来查询我的 SQL 数据库,它可以将整个表作为 C# .NET 类的数组返回。我无法理解的事情是;

  1. 如何使用 Objective-c 解析这个 C# .NET 类以获取对应于每一行的每个类对象。
  2. 然后我可以使用此对象信息更新我的本地 SQLite,但是仅更新已更改的行的最佳方法是什么?理想情况下,我应该能够从 SQL Server 数据库中仅获取所需的行,以便我只需将它们插入 SQLite。我看到了this 的帖子,但对我的问题没有多大帮助。只是想知道是否有任何工具可以进行这种同步?我可以在 SQL Server 和 SQLite 上拥有完全相同的表。

请告诉我您对此的看法。

谢谢。

【问题讨论】:

    标签: c# iphone objective-c sqlite asihttprequest


    【解决方案1】:

    我正在解决类似的问题。如何使远程数据库与本地数据库保持同步。任一端都可以添加或更新行。解决方案似乎是在每个表中保留一个名为 lastModifiedDate 的列。此列是在服务器上设置的,所以会有统一的时间。

    定期连接到服务器并请求大于本地 lastModifedDate 的所有行以获取更新和添加。此外,当您将本地更改推送到服务器时,服务器应修改 lastModifiedDate 以保持一致性。

    我还没有见过这样的框架。

    【讨论】:

    • 确实如此。你用什么在 iPhone 和服务器之间发送数据?我也需要发送图标图像!
    • 我还没有实现任何东西。但是,它可能是一个网络服务。在服务器端,它只会对数据库进行 SQL 调用。对于图像,我也会有,您可以将它们作为 HTTP POST 数据的一部分传递。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-30
    • 2013-11-12
    • 1970-01-01
    • 2016-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多