您的位置:程序门 -> vb -> 数据库(包含打印,安装,报表)



ado 查找sql 服务器时,程序的假死问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


ado 查找sql 服务器时,程序的假死问题
发表于:2007-07-14 16:35:34 楼主
public   sub   ado_connect()
on   error   goto   err
if   isconnectado   =   true   then
      exit   sub
end   if
set   adosvr   =   new   adodb.connection
adosvr.connectiontimeout   =   100
adosvr.connectionstring   =   "driver={sql   server};server=sqlsvr;uid=user;pwd=password; "
adosvr.open
isconnectado   =   true
exit   sub
err:
      msgbox   "无法连接sqlserver数据库 "
      ado_disconnect
      exit   sub
end   sub
以上是最常见的adosql连接
当adosvr.open的时候,系统在内网扫描sql,程序会假死一段时间,通常在1秒-3秒,但如果sql不存在,就要花6-10秒左右或更多时间,这个时间里程序不响应其他的操作,就算用了doevents也是没用,如何在这几秒时间里进行其他操作?有地方说用多线程,怎么做?或者怎么来缩短找不到sql的返回时间,10多秒也太长了吧。
发表于:2007-07-15 11:27:271楼 得分:0
学习。。。
发表于:2007-07-16 15:35:432楼 得分:0
不解决问题决不沉默。。。。。。。。。。。。
发表于:2007-07-17 09:11:383楼 得分:0
adosvr.connectiontimeout   设为   4   之类刚好正常能链接的值
发表于:2007-07-19 08:18:054楼 得分:0
我把adosvr.connectiontimeout   设为   1   ,返回值在6-9秒不等,设为3,似乎也在8-10秒,总是没有sql存在找到的返回快。sql存在通常只要2秒就能返回。
发表于:2007-07-19 08:33:405楼 得分:0
关注
发表于:2007-07-20 09:36:476楼 得分:0
顶置,天天关注
发表于:2007-07-28 17:37:197楼 得分:0
关注一下

我也一直想解决这个问题

发表于:2007-07-31 01:56:178楼 得分:0
不是吧,会不会是网络太慢啊?
发表于:2007-08-01 14:20:489楼 得分:0
如果是内网主机,且没有屏蔽ping,则可以先ping一下看看主机是否存在。
发表于:2007-08-02 01:50:5410楼 得分:0
我也遇到这个问题,并且connectiontimeout这个参数好像不管用
发表于:2007-08-02 01:54:4211楼 得分:0
http://topic.csdn.net/t/20051202/19/4434621.html


快速检索

最新资讯
热门点击