2011-03-23 64 views
2

我正在开发移动应用程序,我不知道如何执行此操作。 我将使用Appcelerator Titanium for iPhone。如何在更新Web数据库之前跟踪本地SQlite上的数据库更改

我不希望用户在用户手机上的本地SQLite数据库发生更改时调用在线数据库。

我想这样做,以便用户可以脱机工作。后来,当用户按下一个按钮时,我希望所有的更改都被复制到一个在线数据库(只有改变了的东西)。

我不知道什么是最好的方式去了解它。

一个明显的方法是,每次我同步时,我会将整个数据库从手机复制到网络服务器。但不知怎的,这似乎不合逻辑,或者不合逻辑。

寻找建议。

回答

3
  1. 在数据库中使用“上次更新”列。

  2. 保留“同步”事件表,记录每个同步事件的时间戳。

  3. 当您同步时,筛选自“上次同步”以来发生更改的行。

我会组织我的数据库,以便每个记录具有UUID - 这是为了让您能够匹配服务器镜像那些本地数据库行。

希望这给你一些想法。

+0

谢谢,我要试试这个。希望它有效。 – ssdesign 2011-03-23 03:47:44