Office中国论坛/Access中国论坛

标题: 在广域网下使用ADP访问SQL Server [打印本页]

作者: ys400    时间: 2007-3-2 20:13
标题: 在广域网下使用ADP访问SQL Server
     在内部网使用ADP访问SQL Server,系统是比较稳定;

     但在广域网下,经常出现:过一会(时间不等,从10分钟到2小时),客户端就会自动断开与数据库的连接(我用的是ADO),导致无法访问数据库。很困惑? 在局域网内则没有这方面的问题,是不是adp只适合局域网?

    出现这种情况后,将产生两种后果:

    1)数据源为表/视图/存储过程的组合框内的列表内容消失,可通过改为值列表的形式解决;  
    2)ADO连接断开。这种办法,只能在连接。但现在无法判断是否一直连接(通过判断连接的状态,不能识别)。有没有好的办法?   我用CurrentProject.Connect.State ,但其值总是1(即使ADO断开连接)

   当然,每次断开后,可以显性连接。但这种方法很不友好,希望能有一种能侦测并自动重连接的解决方法





[此贴子已经被作者于2007-3-2 17:22:21编辑过]


作者: ys400    时间: 2007-3-3 01:19
答案(一)

是,这是网络不流畅的结果,在当今的互联网环境下,使用ADP连接外网上的数据库是不太理想,我想解决的办法可能只能是自己写代码来判断是否已经断开了连接,断了就重新连接。


我最近正在开发的一个项目就需要这么做,我的思路是使用mdb文件,用ADO连接数据库,所有窗体都使用代码来连接,使用me.form.Recordset=recordSet的方式,而不是直接使用ADP文件,这样,一旦断开,我可以通过捕捉异常错误来发现,并且重新连接。

至于在ADP文件中,使用其自身的功能能不能实现断线重连的效果,我还没有想到办法,不知道有没有哪位高手有好的的方法或建议。

源于:http://www.office-cn.net/forum.php?mod=viewthread&tid=49568
作者: ys400    时间: 2007-3-3 01:28
答案(二)

问:用access的项目文件远程连接SQL Server出现间断性的连接失败,怎么解决?我用access做了一个adp文件,后端是位于互联网上的远程SQL Server数据库(我开放了服务器的1433端口),登陆方式是混合验证模式。登录时须输入用户名(sa)和密码
可是在程序运行当中会无规律的出现连接失败的事情,有时候一整天都正常,有时候一分钟内出现好几次。一般重新连接一下就又正常了。
可是老这样也不是办法,盼高人指点迷津,给个解决问题的好办法。谢谢!
      声明:我用ADSL上网,网络状况正常,网页浏览正常。

答:应该是网络问题。 最好的办法是:通过VPN建立稳定的通道。 这样做有两个好处: 1、安全 2、稳定

源于:http://www.office-cn.net/forum.php?mod=viewthread&tid=36163
作者: Jason-H    时间: 2007-3-3 18:02
听说通过VPN会不错!但是我没有试过,希望试过的谈谈使用的效果!关注中!
作者: zhuyiwen    时间: 2007-4-13 02:09
总的来说,办法一比较好。不要使用链接表,服务器端多写存储过程,在Access中使用传递查询。

如果使用ADO,传递查询就不要用了。
作者: rcylbx    时间: 2007-12-10 22:11
学习,学习,学习
作者: gdjdyyj    时间: 2009-8-19 16:14
学习,
作者: hosam    时间: 2009-8-19 16:50
谢谢分享~~~~~~~~
作者: xjb_test    时间: 2009-11-14 21:59
学习,




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3