首页 新闻 会员 周边

如何将本地数据库access的数据同步至网络数据库SQL Server2008

0
悬赏园豆:50 [待解决问题]

软件使用C#编写,使用两个数据库,主数据库为网络数据库SQL Server2008,备用数据库为本地数据库access,当用户无法访问网络时,自动连接access数据库继续进行数据保存,当网络恢复后,重新连接网络数据库,并将access数据库中尚未上传的数据自动同步上传至网络数据库。

基本思路是这样,本来想通过代码,逐行上传本地数据的数据,但想想要涉及40个数据表,代码量太大了,是否有什么便捷的方式,调用数据库的自带函数完成上传作业?

连接网络数据库后,执行下面的语句能否实现上述效果?

USE SQL SERVER Jobs!
Command:
INSERT INTO [TableOfSQL] ([ID],[F1],[F2],[F3])
SELECT [ID],[F1],[F2],[F3]
FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0','Data Source=\..\XXX.mdb')...[TableOfAccess] AS T1
WHERE [T1].[ID] NOT IN (SELECT [ID] FROM [TableOfSQL]

DeepSky_的主页 DeepSky_ | 初学一级 | 园豆:106
提问于:2017-07-05 11:35
< >
分享
所有回答(3)
1

 能不能难道你自己不会试验么?

爱编程的大叔 | 园豆:30839 (高人七级) | 2017-07-05 11:41
0

sqlserver 客户端 带数据导入导出功能,直接用就好了

hahanonym | 园豆:1460 (小虾三级) | 2017-07-05 11:42
0

如果都有行标识就用行标识,如果没有可以增加行标识(也可以用时间),网络判断OK后,去服务器取最新标识,然后读取access,插入sqlserver,如果双方表名列名统一那么不用map,否则需要map,至于sql拼装很简单,你也可以使用orm反射来自动化——当然道理还是一样的。

花飘水流兮 | 园豆:13560 (专家六级) | 2017-07-08 15:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册