一个数据库同步的问题,感谢大家解答,比较有挑战性,必给分

时间:2021-03-19 19:54:56
我需要开发这样一个软件,各个用户使用此软件把本地数据库ACCESS的数据上传到服务器上汇总,同时各个用户要在本地保存一份与服务器MYSQL数据库记录完全相同的数据库,也就是说汇总后再把服务器MYSQL上的数据复制一份到本地的ACCESS数据库上。

细节是在无网络连接的状态下把录入的数据先保存到本地的ACCESS数据库上,等到有网络连接时可以把本地ACCESS数据库上的记录全都上传到服务器的MYSQL数据库上,再实现本地的ACCESS数据库与服务器的MYSQL数据库一致,请问应该怎样来实现呢?当然可能存在多个用户同时对服务器上的MYSQL数据库写上传数据。

如果此过程通过单存的SQL来操作我怕存在一些隐患。请问有没有什么更好的方法呢?
或者把两边的数据库都换成sql server是不是可以用sql server的同步功能来完成以上的过程呢?

14 个解决方案

#1


请问楼主用什么软件进行开发的,如果是PB,可以用数据口进行更新

#2


用VC,使用ADO

#3


up

#4


up

#5


应该是没有问题,可以在本地的数据库中设置一单独的字段来表示是否上传

#6


我本地的ACCESS是作为暂存的,程序开始同步时,我是循环的向MYSQL插入数据的,插入一个就删除本地ACCESS的这个数据。
有可能存在的问题是,insert 数据到mysql,断电,那么ACCESS里的这个数据并没有被删除。那么在下次同步时这个数据还会插入到mysql中,这样不是存在有隐患?

#7


up

#8


请问楼主为什么不本地直接提交到服务器上面呢?
 做那么多中间过程为了什么?

#9


因为本地不是时刻都连接在网上的呀...在无网络连接的状态下也必须要录入数据先

#10


高手们哪去了?

#11


主要是在同步的时候,一定要注意分布式事务的问题.保证数据的一致性

#12


用sql server的合并复制怎样来解决以上的问题呢?

#13


up

#14


up

#1


请问楼主用什么软件进行开发的,如果是PB,可以用数据口进行更新

#2


用VC,使用ADO

#3


up

#4


up

#5


应该是没有问题,可以在本地的数据库中设置一单独的字段来表示是否上传

#6


我本地的ACCESS是作为暂存的,程序开始同步时,我是循环的向MYSQL插入数据的,插入一个就删除本地ACCESS的这个数据。
有可能存在的问题是,insert 数据到mysql,断电,那么ACCESS里的这个数据并没有被删除。那么在下次同步时这个数据还会插入到mysql中,这样不是存在有隐患?

#7


up

#8


请问楼主为什么不本地直接提交到服务器上面呢?
 做那么多中间过程为了什么?

#9


因为本地不是时刻都连接在网上的呀...在无网络连接的状态下也必须要录入数据先

#10


高手们哪去了?

#11


主要是在同步的时候,一定要注意分布式事务的问题.保证数据的一致性

#12


用sql server的合并复制怎样来解决以上的问题呢?

#13


up

#14


up