为什么ADODB ConnectionTimeout设置了没效果
时间:2011-08-15
来源:互联网
我要判断某一个服务器是否能连接,但是要控制时间,2s内如果不能连接我就返回连接失败
VB code
实际测试,无论怎么设ConnectionTimeout ,都要等30s左右才返回结果。(我记得默认是30s的)
请问这是怎么回事?有没有解决办法
VB code
Public Function IsServerOK() As Boolean On Error GoTo err Dim conn As ADODB.Connection Set conn = New ADODB.Connection conn.ConnectionTimeout = 2 '设置连接超时,2s内无法连接视为服务器不可用 conn.Open "Provider=SQLOLEDB.1;Persist Security Info=True;UID=sa;PWD=sa;Initial Catalog=TEST;Data Source=192.168.1.1" '连接服务器 conn.Close Set conn = Nothing IsServerOK= True Exit Function err: Set conn = Nothing IsServerOK= False End Function
实际测试,无论怎么设ConnectionTimeout ,都要等30s左右才返回结果。(我记得默认是30s的)
请问这是怎么回事?有没有解决办法
作者: ThreeColor 发布时间: 2011-08-15
好像是默认时间改不了的,好多人都遇到这个问题,不知道什么原因。用别的方法来实现吧,可以多一个多线程,在主程序链接数据库之前启动一个不占用任务栏的进程,每一秒中响应一次事件,如何几秒内没有接受到链接成功的信息回复,可以认为未链接成功,提示信息。。
作者: Jesse621 发布时间: 2011-08-15
引用楼主 threecolor 的回复:
我要判断某一个服务器是否能连接,但是要控制时间,2s内如果不能连接我就返回连接失败
VB code
Public Function IsServerOK() As Boolean
On Error GoTo err
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
conn.Connec……
我要判断某一个服务器是否能连接,但是要控制时间,2s内如果不能连接我就返回连接失败
VB code
Public Function IsServerOK() As Boolean
On Error GoTo err
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
conn.Connec……
conn.ConnectionTimeout 影响的是Execute方法,没有影响Open
使用 Execute 方法执行对连接的命令,并使用 CommandTimeout 属性对执行进行配置
作者: worldy 发布时间: 2011-08-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28