现在有一个服务器为win2000server 上装有sql2000(未知版本)+sp3,ip为210.42.223.12
我用客户机win2000professional ,ip为210.42.215.98 连接服务器上的数据库db1,但连不上
请问为什么?高手请指教
我用xp就能连上
ping能ping通
但连接时提示打不到服务

解决方案 »

  1.   

    你有安装SQLSERVER2000的客户端吗?先安装SQLSERVER2000的客户端,如果不安装可以用ODBC数据源...
      

  2.   

    这个跟客户端访问服务器时的用户验证信息有关系,你先尝试访问服务器上的某共享文件夹,看会不会要求你输入登陆信息,如果需要,登陆一遍,再尝试连接Sql Server 2000
      

  3.   

    win2000对win2000得装sql客户端?
    谢谢您 
    “如果不安装可以用ODBC数据源...”
    能详说一下吗
      

  4.   

    miracle888() 谢谢
    我刚和客户沟通过。。请他们试试
    我没设定连接啊。。
    我的连接代码是
    "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=" & LoginName & ";pwd=" & Pwd & ";Initial Catalog=" & Dbname & ";Data Source=" & DataSource
      

  5.   

    具体说说,怎么连接不上,是在程序里连接不上吗?如果不安装客户端的话,win2000 pro 下需要安装mdac2.8 (微软数据访问组件)
      

  6.   

    是嘛!!
    我不是很懂。。但mdac2.8有下载吗?
    提示“[DBNETLIB][DonnectionOpen(Connect()).]SQL Server 不存在或拒绝访问”
    我想就是没找到服务器。
    但我连接时写的是
    Provider=SQLOLEDB.1;Persist Security Info=False;User ID=" & LoginName & ";pwd=" & Pwd & ";Initial Catalog=" & Dbname & ";Data Source=" & "210.42.223.12"
    而且能ping通
      

  7.   

    mdac2.8有下载,你说的这种题我碰到过好几次,我说的方法不知道对你有没有帮助,问题解决了没有?
      

  8.   

    我做过多次的SQLSERVER2000的开发,发现用ODBC连接的兼容性比较好,但有个与OLEDB不同的注意:
    当用ODBC连接后,用多表查询时如果发现字段有重名,它也照样显示一样的字段名,但OLEDB则不是,这个需要注意一下!例如:select T1.ID,T1.ProName ,T2.ID,T2.ClassName form T1,T2 where T1.ID=T2.ID这时的ODBC显示就是 |ID  |ProName | ID | ClassName
    用ADO时要特别注意这点,因为在引用中你直接写rs("ID") 这样写它会自动找到其中一个ID列OLEDB则显示: |T1.ID |ProName |T2.ID|ClassName
    这时用ADO这样写:rs("ID") 则会出错!如果你不知道ODBC数据源连接的方法,去搜索一下,一定很多的!
      

  9.   

    ConnectionString = "driver={sql server};server=192.168.1.198;uid=sa;pwd=;database=soshe"这个应该是ODBC连接的方法!
      

  10.   

    to miracle888() 
    谢谢你,这几天忙别的了,不好意思。客户反馈问题没解决。我再想办法吧。也可能是他机器有问题。
    to Jockey() 
    谢谢,我会试试的。