使用SQL-DMO对象去获取,应该是比较快的,即便你不知道uid和pwd
http://dotnet.aspx.cc/ShowDetail.aspx?id=BCEAADFB-CFF3-4804-B3B3-6C7D6488982B

解决方案 »

  1.   

    菜鸟是这样用的try
    {Connection.open}
    catch
    { }
    //可以啊?
      

  2.   

    菜鸟是这样用的try
    {Connection.open}
    catch
    { }
    //可以啊?这样用,如果联接不通,至少要等30秒啊。
    太慢了。
      

  3.   

    SQLDMO.ApplicationClass sqlApp = new SQLDMO.ApplicationClass();
    SQLDMO.NameList nameList;
    int i = 0;

    try
    {
    nameList = sqlApp.ListAvailableSQLServers();
    }
    catch(Exception ex)
    {
    nameList=null;
    }
    for(i=1;i<nameList.Count+1;i++)
    {
                                  string servername=nameList.Item(i).ToString(); }
      

  4.   

    好像没有高效的,局域网连接sql不存在也很慢
    应该是检测的慢
      

  5.   

    connection timeout=5; //默认30,可以改小一点,加快速度
      

  6.   

    jimh(jimmy) 
    -------
    如果实际connection time = 6
    你的这个方法就有点问题了.
      

  7.   

    connection对象有一个TIMEOUT之类的属性,设小一点就行了
      

  8.   

    同意回复人: OneDotRed(武装到眼神) ( ) 信誉:100 
    使用SQL-DMO对象去获取,应该是比较快的,即便你不知道uid和pwd
    http://dotnet.aspx.cc/ShowDetail.aspx?id=BCEAADFB-CFF3-4804-B3B3-6C7D6488982B
    -----------------------------------------------------------------------------------这个方法可能是最快的了。
      

  9.   

    首先ping 一下看通不同然后在连 ,因为你用代码连接的时候会包错有一些错误处理当然会很慢
      

  10.   

    SQLDMO的方法只是对局域网内的有效,但我的sql server是在公网中的,上面jinbingg提到可以看这个ip能不能连通,那怎样以最高的效率判断这个ip是否可连通?
      

  11.   

    主要就是ConnectionTimeOut你把它设置短些
      

  12.   

    用System.Net.Sockets實現Ping功能
    將200分比曬我
      

  13.   

    用tcpclient去连接,看连的上不嘛。
      

  14.   

    RnRn!呢排喺中山搞紧乜?竟然连咁简单嘅问题都唔识?
      

  15.   

    realMax系乜卵啊?System.Net.Sockets点ping啊,coding啦,hi
      

  16.   

    SQL SERVER会有几个实例,每个实例的端口不同,但会有缺省端口;1433还是2433?忘了。
    所以,除了IP,还要知道端口。
    知道IP与PORT,就可用Socket联结此端口,如果成功了,说明有SQL SERVER.
      

  17.   

    寻找所谓的“最高效的”判断方法,是没有什么意义的。
    程序试图连接到一个SQLServer,可能会由于很多原因。这个网络查找的过程,应该是属于正常的。
      

  18.   

    here
    http://www.ccw.com.cn/htm/app/aprog/01_8_1_2.asp
      

  19.   

    其实就算你知道这个sql server已经存在,连接时间还是一样的,不过是可以首先检查有没有sql server没有安装就算了
      

  20.   

    连接sql是很慢的,就算是本机也是比较慢,更何况。ping这个方法可能不行。
    因为许多服务器禁止这一功能
      

  21.   

    connection timeout可以设置,但是我以为,默认值还是比较合理的,因为有时候网速或者服务器比较慢,可能就是需要几十秒的时间,如果timeout设小了,本来可以连的就连不上了。
      

  22.   

    这就是解决方案?PING功能可能服务器禁用怎么办?