我在VB里连数据库,如果目标数据库不存在,VB的窗体就会假死,过很长时间提示数据库不存在。
有什么办法不让这个窗体死掉,也就是异步。

解决方案 »

  1.   


        把连接超时(connectiontimeout)的时间设置短一点,比如20秒。
      

  2.   

    但这个也不是个好办法。如果能像XML异步调用就好了
      

  3.   

    可惜VB不支持多线程你改成ODBC连接,遇到此类条件(数据库不存在)就会很快了
      

  4.   

    数据库连接对象有一个CommandTimeout属性用来控制连接等待的最长时间。你所说的假死就是在等待连接状态。解决方法有两个:1、将连接时间变短,不过这不好。存在连接速度慢而引起正常连接失败的风险。2、先检查数据库是否存在,如果是SQL_SERVER就先做空数据库连接,再查系统表。如果是Access,就检查dbt文件。