dim cnn as new adodb.connection
cnn.connectionstring="..........."
cnn.open
这里cnn打开数据源,请问有没有检测cnn这个数据源是否存在,以及connectiongstring是否出错等等问题的一个方法呢?因为如果cnn.open失败的话,我没有办法得到反馈信息。
可能我说得不清楚,我是想这样:在cnn.open之前,测试一下看cnn执行open这个命令是否可行,若可行则执行,若不可行,则反馈错误信息(例如数据源不存在--也就是数据库机器关机以及网线扯掉了,还有其他错误问题)。因为我直接执行cnn.open,它能open还好,如果不能open的话,就会卡住十几秒,我设置了connectiontimeout=1之后还好一点,不过还是不能反馈错误信息。请大家帮我这2个忙:1,怎样检测cnn是否可以成功执行open命令;2,怎样在cnn不能open的情况下返回error信息。多谢!

解决方案 »

  1.   

    sub Con()
        on error goto Errs
        dim cnn as new adodb.connection
        cnn.connectionstring="..........."
        cnn.open
        exit sub
    Errs:
       msgbox err.Description 'cnn.open失败的话,得到反馈信息
    end sub
      

  2.   

    不open怎么能得到反馈信息呢?
    那个等待时间肯定是要的,反馈信息可以使用楼上的语句!
      

  3.   

    看一下MSDN的ADO 错误代码,可知道详细错误代码,提前检查好像没有好方法吧
      

  4.   


    Try
      '执行代码
    Catch ex As Exception
      '根据 ex 的类型,提示出错,msdn 有具体参考列表
    finally
      '不管是正确执行还是执行出错,在结束 try 结构之前,执行这里的代码
    End Try没有其它更好的方法
      

  5.   

    昏,VB里有TRY  。。CATCH语法?