最近程序连接sql 2005 时出现如下错误,等待时间很长, 
Name Pipes Provider: Could not open a connection to SQL Server [53] 
当禁用客户端的Name Pipes 协议后重试, 又出现 
TCP Provider:No such host is known 当取消掉对话框后,程序已经连上可正常运行,不知为什么要弹出这个错误提示, 求助 连接字符串如下,用的ADOConnection。 
Provider=SQLOLEDB.1;Password=123;Persist Security Info=False;User ID=sa;Initial Catalog=GPP;Data Source=127.0.0.1; 
在多个机器上做过测试 跟sql 版本,MDAC版本无关,更改连接字符串不起作用,而且某些时候又会不发生此错误,
测试时只有在有delphi的机器上始终不会发生此错误, 找不到原因所在, 求助!

解决方案 »

  1.   

    查一查ADO的版本
    应该用2.7或者以上
      

  2.   

    http://topic.csdn.net/u/20080921/18/7410a34e-fbac-412e-aaad-3e5a83f9de7f.html?seed=858817316(同问题的另一帖)我的注册表 MDAC 版本键值为 
    FullInstallVer    REG_SZ      2.82.1830.0      
    Version           REG_SZ      2.0.0
      

  3.   

    我d7做的程序,用的是sql server2K,不做任何修改,直接连接到SQL SERVER2005上,没有任何问题,没装客户端
      

  4.   

    ADOConnection你的联接是动态的吧,先把他的联接属性connected设置为false
    然后再执行跟踪一下程序,看哪里报错。
      

  5.   

    SQL Server 2005 Configuration Manager 里看看 TCP/IP协议是不是禁用了