【发布时间】:2012-08-03 03:13:51
【问题描述】:
我正在尝试制作一个在线应用程序,它可以将 Android 设备上运行的 SQLite 数据库与服务器上运行的 SQL 同步。我们有一个在 .NET 和 Android 上运行的企业应用程序;我们需要同步他们的数据以保持一致性。这将是双向同步:发生的任何数据更改(在客户端或数据库服务器上)都应同步。
我看到这可以通过多种方法实现,但对于这种情况,我建议使用 Microsoft Sync Framework,因为它可以自动执行同步过程并且也很方便。我对使用 Sync 框架进行了一些研究,并在 Microsoft 网站上找到了一些示例。但大多数情况下,他们是在进行离线同步:他们基本上是在桌面上进行同步过程,其中源数据库和目标数据库在同一台机器上。但对于我的情况,情况并非如此。我在客户端机器上有 SQLite,在服务器上有 SQL,所以这里似乎需要一个在线同步过程。
我应该如何做到这一点?
【问题讨论】:
-
在两个如此不同的数据库之间进行完全通用的同步是非常困难的,如果不是不可能的话。我还假设同步中必须有某种类型的业务规则,如果有人删除了设备上数据库的内容,我认为不应该删除主人?在我看来,您需要提供更多详细信息并稍微限制您的问题,以获得一个远程有用的答案。
-
感谢您的回复 Joachim - 实际上我们现在只关注添加操作。例如,我通过 android 手机在本地 SQLite 上添加了一条记录,现在当我按下同步按钮时,这条新创建的记录应该与服务器上运行的远程 SQL 同步。
标签: sql-server sqlite synchronization microsoft-sync-framework