我现在用下面的连接方式.但有个问题,就是客户端如果只能PING通服务器还不行,还一定要通过    \\服务器计算机名(IP) 访问得了或在网上邻居打开服务器才行. 
有没有什么办法可以只要客户端能PING通服务器就可以? (不用  \\服务器计算机名(IP) 访问得了或在网上邻居打开服务器 这一步). 谢谢.GlServerName:=trim(edit1.Text);
  GlServerDBName:=trim(Edit3.Text);
  GlServerUserName:=trim(Edit4.Text);
  GlServerUserPass:=trim(edit2.Text);
    if Trim(GlServerUserPass)='' then
        myTmpStr:='Provider=SQLOLEDB.1;'+
        'Persist Security Info=False;'+
        'User ID='+GlServerUserName+';'+
        'Initial Catalog='+GlServerDBName+';'+
        'Data Source='+GlServerName+';'+
        'Connect Timeout=1000;Use Procedure for Prepare=1;'+
        'Auto Translate=True;Packet Size=4096;'      else
        myTmpStr:='Provider=SQLOLEDB.1;'+
        'Password='+GlServerUserPass+';'+
        'Persist Security Info=False;'+
        'User ID='+GlServerUserName+';'+
        'Initial Catalog='+GlServerDBName+';'+
        'Data Source='+GlServerName+';'+
        'Connect Timeout=1000;Use Procedure for Prepare=1;'+
        'Auto Translate=True;Packet Size=4096;';  try
    begin
        if ADOConnection1.connected=true then ADOConnection1.Close;
        ADOConnection1.ConnectionString:=myTmpStr;
        ADOConnection1.Open;
 
    end
  except
    showmessage('连接失败! ');
  end;

解决方案 »

  1.   

    楼上好."正常情况下,服务器安装好,客户端直接就能联接到上"哪是因为正常情况下 \\服务器计算机名(IP)能访问得通呵.但很多情况下是能PING通,但 \\服务器计算机名(IP)能访问不通的.
      

  2.   

    我用了很长时间sqlserver,你可以试试在客户端装一个sqlserver的客户端,用查询分析器,看是否可以联上服务器器.
      

  3.   

    一般的在客户端如果查询分析器能正常联接,程序基本没有问题.
    如果不安装客户端,则可以看看你的注册表中
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo
    这项中的设置是什么样的.
    正确的是应该有个名称:可以是IP地址:192.168.122.99,值:DBMSSOCN,192.168.122.99,1433
    端口默认是1433.如果这样还不行,你找找你们网管吧.
      

  4.   

    搂主好,\\服务器计算机名(IP)能不能访问通,跟sqlserver是没有任何关系的, \\服务器计算机名(IP)使用的是共享服务,你只要保证能ping通,而且sqlserver服务器安装正确,没有防火墙阻止sqlserver的端口就能访问sqlserver
      

  5.   

    楼上兄弟evileagle你好.有时确是能PING通,sqlserver服务器也安装正确,又没有防火墙阻止sqlserver的端口.就是连接不上呵.结果还是一定要这一步(\\服务器计算机名(IP)能访问通)才行.
      

  6.   

    这是局域网DNS解析的问题,属于网络问题
      

  7.   

    确认SQL Server在安装的时候是否只是选择了Windows身份验证.
      

  8.   

    我以前碰到過,PING通,但鏈接不上,什么都試過了,最后配置一下ODBC,通過了,很奇怪,理論上不用管ODBC,到現在也搞不懂。
    樓主可以試試
      

  9.   

    如果还连不通,给sqlserver打个补丁,sp3或sp4都可
      

  10.   

    同样的SQLServer安装文件,同一个网络,在我的电脑上安装后(混合验证模式),别人那里安装客户端后与我的服务器连接不上,而别人的电脑上安装了服务器之后,我的就能访问。查看自己的端口:cmd>: telnet MyIP 1433后显示无法连接,到我能访问的那台电脑上,用同样的cmd>: telnet HisIP 1433,也是无法连接,我已经把我电脑上的防火墙什么的都关闭了,仍然不行……不知道什么原因,还望高人指点迷津。
      

  11.   

    数据库服务器1433端口没有开放,xp、2003系统要打上sqlserversp3以上的补丁才能正常访问
      

  12.   

    已经打过sqlserversp3的补丁,仍然连接不上。
    另外,为什么在有的电脑上不打补丁,却能连接上呢?(同一个操作系统)
      

  13.   

    访问自己能访问的SQL Server 的ODBC数据源就行
      

  14.   

    这是局域网DNS解析的问题,属于网络问题
    up