寻求SQL Server数据库与本地Access数据库数据同步复制的快速方法

寒雪叔叔 2005-12-08 02:39:04
我的程序原来是采用的C/S结构, 本地负责数据组织, 而在远程的SQL服务器上取原始数据, 由于这样的数据查询量很大,且中间又间隔了多个路由器,显得速度很慢,还常出现超时的问题, 为了解决这个问题,我现在想出一个办法,就是把SQL服务器上的基础数据移到本地的Access数据库中, 由本地进行数据查询,速度及效果一下就好了很多.
  但是这样就引发了一个新的问题, SQL服务器上的数据一定时间内可能被修改(比如每星期有几次改动),而我本地的基础数据就要求同步更新,这点我没有想到办法实现, 所以就做成了手动更新(操作员按一下"升级数据"),但因为数据量很大(20M左右),我采用的最原始的办法:清空本地数据库,再将SQL中的所有数据查询出来一条一条插入本地表中,这样的话有两个问题:1.速度太慢, 2.本地表中的自动编号字段的值会越来越大,与SQL中的对不上号.如果用逐条比较法更慢得要命.

不知道有没有更快更好的办法的更新办法
...全文
206 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jazy 2005-12-16
  • 打赏
  • 举报
回复
哦,估计楼主要考虑一下自己的目标是否需要变化一下:按照你最初的描述,问题的原因其实是网络太慢,那么请问网速慢到什么程度,而你又期望在多长时间内更新完毕呢?
假如网速慢到copy一个20M的文件你都无法忍受的地步,这个问题就不该从数据库的角度找解决办法了,数据库操作再优化也达不到这个效果的。应该从服务器端想办法,减少数据量。
寒雪叔叔 2005-12-15
  • 打赏
  • 举报
回复
to jazy: 我知道找时机进行全更新,这样的时机很多, 不过我是想有办法能快速更新,我现在用的办法是
rs.open(..., "select * from mytable"); //查询SQL表
while(!rs.IsEof()) //这里进行了许多次循环, 效率太低
{
rs.GetFieldValue(...);
rs.GetFieldValue(...);
....
//插入本地表
rs2.AddNew()
rs2......
....
rs.MoveNext();
}
//而且后面还有许多个表要做这样的工作.
.....
.....
.....
.....









to DebugXP(NULL): 你说得都对,我也是这样做的, 不过不能解决我的问题.我反回的数据量不大一般来说就是一条,不过一次查询事务里有500次这样的查询你说是本地快还是网络快?

@#$%^*&$%(*^^^^^00000)))^^^^^^^^
jazy 2005-12-09
  • 打赏
  • 举报
回复
看楼主的软件使用情况,应该操作实时性要求不是很高,可以考虑每次用户打开应用程序时全更新一次,那时候用个进度条显示着用户也不会反感吧?
DebugXP 2005-12-09
  • 打赏
  • 举报
回复
把基础数据转移不太好吧,如果修改了没有同步哪数据岂不乱了??
一次不要返回太多数据,取那么多数据客户看得完吗?
建议用SQL做分页,一次返回少量数据100-1000行,分多次返回。
oyljerry 2005-12-09
  • 打赏
  • 举报
回复
要么就都用Sql Server来进行同步等
如果用Access等,就还是只能数据插入等了
hell_wolf 2005-12-08
  • 打赏
  • 举报
回复
救救我
帮我看看这个: http://community.csdn.net/Expert/topic/4445/4445013.xml?temp=.6219904
寒雪叔叔 2005-12-08
  • 打赏
  • 举报
回复
laiyiling(【龙工一号●CSDN】) :
我一边是Access2000的一个文件(没有Access环境),一边是Sql server如何发布,应该不能做发布的, 再说同步,复制好象也不能实现的
   我水平低,如果能实现实说细点,谢谢!
寒雪叔叔 2005-12-08
  • 打赏
  • 举报
回复
要求不高,也许三两天操作员要去点一次"升级数据",也许半月不用管, 也许SQL数据更新后有电话通知本地操作员更新.
Kudeet 2005-12-08
  • 打赏
  • 举报
回复
把SQL做成发布,或者用同步、复制,在SQL联机丛书里有很详细的步骤
koko1998 2005-12-08
  • 打赏
  • 举报
回复
如果时时同步的话,还利用本地的就没有意义的吧!?

如果,要求不高的话,下载远程database到本地不可以吗?

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧