编写了一个VC程序,想远程访问另一台机子上的服务器(该机已装SQLserver2000,并已附加好要链接的数据库),数据库名chejianguanli.mdb,ip=10.128.22.123,端口1433,SQLserver2000安装时的的用户名=idq,密码为空(不知道这个跟链接字符串有关系没?)。请问VC使用ADO编程时如何书写ADO的链接字符串?还有,字符串中的各个部分分别是什么意义?

解决方案 »

  1.   

    更正一下,数据库名=chejianguanli,是用SQLserver2000做的,不是Access的。
      

  2.   

    "Provider=SQLOLEDB;Data Source=" + servername + ";Persist Security Info=True;User ID=" + username + ";Password=" + password + ";Initial Catalog=" + dbname;
      

  3.   

    ADO的属性里面有一项是设置连接字符串的,点开后会弹出对话框,可以直接设置,设好后将连接字符串拷出来就行了
      

  4.   

    TO水无痕:我点了,但是为什么说无法访问呢?是不是安装SQLserver的时候还要设置什么东西啊?谢谢
      

  5.   

    看你的数据库TCP端口是否打开了.端口号是多少.
     一般默认是1433
      

  6.   

    而且现在服务器的防火墙也让我关掉了,可还是不行。在ADO属性里面选择服务器以后,再选择数据库的时候,提示[DBNETLIB][ConnectionOpen(Connect().)SQL不存在或拒绝访问。点击确定以后,又提示“登录失败,无法检索目录信息”。
      

  7.   

    http://topic.csdn.net/u/20080414/22/bfa756d3-4140-4600-b6df-6779ee7ddf00.html
      

  8.   

    水无痕:我用telnet命令检查服务器连接的时候,提示不能打开到主机的链接,端口23:连接错误。其他网络和客户端的端口协议都设置一样了,应该没有什么问题。我参照你给我的那个地址做了,TCP/IP协议都开着,而且都是1433,可是为什么还是不行呢?关键是为什么不能连接到主机呢?
      

  9.   

    PING  ip和服务器名称结果都是通的。
      

  10.   

    你在服务器上的命令行窗口里面输入:netstat -an,看一下有没有1433端口,如果没有,那就是还没有打开.如果有的话,输入telnet ip 1433,如果可以连上再到你客户端试下,不能连的话,看下你的防火墙是否限制了.
    参考下这个:
    http://topic.csdn.net/u/20071204/10/51b61218-d3dc-4962-9bf3-c744aacc77fe.html服务器一定要打好补丁啊.我的就是没打好补丁搞了好多天
      

  11.   

    你telnet时输的端口要是你的服务器设的端口,没设的话是1433,不是23
      

  12.   

    本机和服务器都没有1433,LOCAL ADRESS和FORIGN  ADDRESS 里面都没有1433。该怎么开通呢?
    还有打补丁是不是直接在网上下一个SP4补丁就行了?
      

  13.   

    看一下你的SQL版本,执行这个查询:select @@version看一下第二个网址,那里面有教怎么去作的
      

  14.   

    大哥,我现在服务器和客户机上都做了以下工作:防火墙关掉,服务器和客户端口均为1433,都装了sp4的补丁。但是netstat -an的时候还是没有出现1433。在结果列表里并没有出现 tcp 127.0.0.1 1433 listening 的项。(LISTEN里面列出的本机ip地址只有一个127.0.0.1:1051)。疯掉了……
      

  15.   

    没道理,如果补丁装了,也设了网络后,运行SQL后是打开的呀.我的就是这样的.你把你的SQL版本贴出来.用select @@version
      

  16.   

    Microsoft SQL Server  2000 - 8.00.194 (Intel X86)   Aug  6 2000 00:57:48   Copyright (c) 1988-2000 Microsoft Corporation  Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 3) 
    而且我连360的防火墙都关掉了。还是连不上
      

  17.   

    我刚把我服务器上的sql2000删了重装,可以正常启动1433步骤:
      1. 卸载sql2000,删除c:\program files\microsoft server 2000整个目录,重启
      2.安装sql2000,不要重启
      3.安装sp4补丁.
      4.启动sql2000
    然后就可以连接了.实在不行,你就按我的试下,删除了重装
      

  18.   

    哎呀!这么麻烦你呀!那我晚上试一下。先给你五十吧。进来领分。
    http://topic.csdn.net/u/20100906/17/cd34809c-ff63-460a-ac80-61976d0eacbe.html
      

  19.   

    还不行,你明天可以直接MSN我:[email protected]
      

  20.   

    我装SP4的补丁了啊。删除-重启-再装-SP4-netstat。还是没有1143。要不我再重新下一个2039版本的?网上这么多2000,怎么知道是什么版本的呢?
      

  21.   

    搞定了,重新装了好多次。最后很晕的一个就是,吧sp4解压了以后,以为里面那个方形银白色的图标就是安装程序,后来上网查了才知道,原来双击那个以后,只算是一个二次解压的过程,真正的安装文件是在解压后的文件夹里德setup.bat,那个才是真正的安装程序。把这个搞清楚,一切就OK了。
    谢谢水无痕今天给我的帮助,希望以后还多照顾小弟啊。进来拿分吧,哈哈……
    http://topic.csdn.net/u/20100906/22/96e15a5a-7b38-4976-a0c2-6beb8be9df9c.html