如何在两个数据库之间同步数据?

时间:2015-12-09 20:37:23

标签: vb.net

我开发了一个在线调度程序,允许我的客户与我的美容中心约会。现在我还有一个具有更多功能的客户端应用程序,但我也可以创建约会作为Web应用程序。此时我的目标是将约会和其他信息(例如我的客户端应用程序的设置,客户表,提供程序表等)同步到在线应用程序。所以这一步应该是这样的:

  1. 我在我的客户端应用程序上创建约会
  2. 客户端应用程序在线数据库中插入约会
  3. 现在我不是同步专家,但我实际上只是使用查询的insert语句开发了一个API。问题是,如果我在在线数据库中插入约会我有不同的ID,这是错误的,因为id必须相同。所以现在的问题是:

    1.有一个允许我将我的数据从localhost数据库同步到在线数据库的系统吗? 2.对于ID问题,我应该创建另一个字段,如ID_Client,或者那里的某些内容与客户端应用程序中的ID相同?如果是的话,我当然需要检查ID是否已经在在线数据库中创建,这非常烦人。我需要一个简单而强大的解决方案来做到这一点。 有什么建议吗?

1 个答案:

答案 0 :(得分:0)

对于ID的问题,您应该为ID使用GUID,甚至不要使用身份主键尝试此操作。这允许您在客户端,Web服务器等上创建ID,它们不会重复。

对于同步问题,有不同的工具和第三方应用程序可以为您执行此操作,但我不建议您使用您的程序,因为您可能有1000个客户端都需要复杂/昂贵的同步工具。您应该编写一个可以发送/获取更改的Web服务,并在表中添加DateTime字段,以便在记录已存在时告知哪个数据库具有最新数据。这需要一点点工作,但我就是这样做的。

顺便说一句,如果您使用的是VS2015且您的客户端都是Windows 10,那么有一些内置功能可用于构建为您同步的应用程序。但是,我们可以期待用户拥有Windows 10。