connection的state属性无法判断(断开后仍为1),不知各位高手有什么办法可以判断?请给出示例代码,谢谢!
9 个解决方案
#1
cn.State = adStateOpen
可以的
可以的
#2
不行,adStateOpen只是表示连接打开成功,并不表示当前连接是否有效。
#3
我的程序就是这样用的,没有出问题。
#4
我试过了,连接建立后,状态是adStateOpen,过一会断开网络连接,数据库操作报错时,connection的状态仍然是adStateOpen。
#5
你是断开了网络物理连接?
#6
那就麻烦了。
那你首先要判断客户端到sql server的网络连接是否正常,然后再判断数据库的连接是否有效。
那你首先要判断客户端到sql server的网络连接是否正常,然后再判断数据库的连接是否有效。
#7
那就麻烦了,你首先要判断客户端到sql server的网络连接是否正常,可以通过ping方法来实现;然后再判断到数据库的连接是否有效。
#8
是
#9
如果你的Adoconnection的keepconnection属性设为true的话,那么你可以使用ondisconnect来判断连接是否断开,如果是false的话,ondisconnect是不行的,应为你在其它的Ado控件如adoquery里将adoquery的active设为false或者使用close都会触发ondisconnect事件将Active设为true或者open之后就会触发afterconnect事件,使用事件察看器跟踪发现,将AdoQuery的open时(Active=true)事实上作了一个sp_reset_netconnect(可能写错了)的动作。
#1
cn.State = adStateOpen
可以的
可以的
#2
不行,adStateOpen只是表示连接打开成功,并不表示当前连接是否有效。
#3
我的程序就是这样用的,没有出问题。
#4
我试过了,连接建立后,状态是adStateOpen,过一会断开网络连接,数据库操作报错时,connection的状态仍然是adStateOpen。
#5
你是断开了网络物理连接?
#6
那就麻烦了。
那你首先要判断客户端到sql server的网络连接是否正常,然后再判断数据库的连接是否有效。
那你首先要判断客户端到sql server的网络连接是否正常,然后再判断数据库的连接是否有效。
#7
那就麻烦了,你首先要判断客户端到sql server的网络连接是否正常,可以通过ping方法来实现;然后再判断到数据库的连接是否有效。
#8
是
#9
如果你的Adoconnection的keepconnection属性设为true的话,那么你可以使用ondisconnect来判断连接是否断开,如果是false的话,ondisconnect是不行的,应为你在其它的Ado控件如adoquery里将adoquery的active设为false或者使用close都会触发ondisconnect事件将Active设为true或者open之后就会触发afterconnect事件,使用事件察看器跟踪发现,将AdoQuery的open时(Active=true)事实上作了一个sp_reset_netconnect(可能写错了)的动作。