我已经说过两台pc.PC-a和PC-b都有相同的应用程序安装了java db支持。我想不时地将数据从PC-a复制到数据库到PC -b反之亦然,因此两台PC始终具有相同的数据。 数据库层中是否已经实现了API(即从PC-a 2.import-merge数据库到PC-b的1.export-backup数据库),或者我必须在sql层(手动)执行此操作?< / p>
答案 0 :(得分:2)
正如你在评论中提到的那样,你想要“合并”数据库,这听起来像你需要编写自定义代码才能做到这一点,因为可能会出现混淆 - 两者都是相同的密钥,但具有不同的细节例如,它。
答案 1 :(得分:1)
我猜您正在使用Java DB (aka Derby) - 在这种情况下,假设您无法使用单个实例,则可以执行backup/restore。
答案 2 :(得分:1)
为什么不在一台电脑上安装数据库。并拥有来自主机pc的所有其他pc的请求数据
答案 3 :(得分:1)
简而言之:如果没有一些工作,你就无法做到这一点。 SalesLogix通过提供站点代码来解决这个问题,所以这是表格的样子:
Customer:
SiteCode varchar,
CustomerID varchar,
....
primary key(siteCode, CustomerID)
所以现在您将获取数据库,并按主键匹配每条记录。如果存在冲突,您必须向最终用户提供报告,说明哪些数据不同。
说机器1:
SiteCode|CustomerID|CustName |phone |email
1 XXX |0001 |Customer1 |555.555.1212 |darth@example.com
并在machine2上:
SiteCode|CustomerID|CustName |phone |email
2 XXY |0001 |customer2 |555.555.1213 |darth@nowhere.com
3 XXX |0001 |customer1 |555.555.1212 |darth@nowhere.com
执行解决方案时:
NO 方法可自动执行此操作,不会出现错误或数据损坏或参照完整性问题。