none
vs客户端程序访问远程数据库没反应。最后系统直接报遇到问题需要关闭。 RRS feed

  • 问题

  • 各位老大,谁教教我。(vs客户端程序访问远程数据库没反应。最后系统直接报遇到问题需要关闭。)
    问题:
    我用vb2005写了个连接远程数据库小程序。在本机可以正常连接。速度也快。
    我把exe及相关文件放到客户端运行(装好.net 2.0)。。。没有任何反应,也不报错。。。过几分钟后系统直接报遇到问题需要关闭

    后来我在一台没有反应的客户端机器上装了sql 2005,把tcp/ip的动态端口改成1433,结果连接远程服务器(公网)成功了
    今天我又换一台客户机装好.net2.0,把exe烤过去.结果又是没应反.不报错.过几分钟后系统直接报遇到问题需要关闭


    难道vs2005连接远程数据库的客户端也要装sql2005????这样MS不是要关门了
    ...我想应该是不要的.是我没学好...请大哥们帮帮我.


    天为什么这么黑,因为牛在天上飞,牛为什么在天上飞,因为是愚兄在吹
    2009年7月21日 12:11

答案

  • 呵呵。。没有实际解决问题。。不过还是谢谢楼上仁兄的解答.

    我用了一个比较傻的办法解决问题了。。

    客户端启动时就检测客户机注册表,没有就写进去。
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\CLient\
    查看有无ConnectTo  建字符串值:服务器IP\sqlpress   数据:DBMSSOCN,服务器IP\sqlpress,1433


    终于松口气了。。希望以后有遇到我同样问题的人能看到本贴。。。



    天为什么这么黑,因为牛在天上飞,牛为什么在天上飞,因为是愚兄在吹
    2009年7月26日 2:52

全部回复

  • 你需要有相应的数据库客户端支持库,这样才可以连接到数据库服务器端。
    http://hi.baidu.com/2009ajun
    2009年7月21日 17:39
  • 你好!
         客户端不用安装SQL Server的,用程序可以连接,你检查一下防火墙的设置,然后看看时候服务器上的SQL Server是否开启了远程连接!
    周雪峰
    2009年7月22日 0:48
    版主
  • 你好,

    Sql Server 2005是需要安装客户端的,但不需要安装服务器端。最简单的方法是下载一个"Microsoft SQL Server Management Studio Express"并安装到你的客户机器上。
    http://www.microsoft.com/downloadS/details.aspx?familyid=C243A5AE-4BD1-4E3D-94B8-5A0F62BF7796&displaylang=en

    确定你的数据库服务器已开启了允许远程连接,然后你用Management Studio连过去试试,如果连接没问题那你的程序连接也会成功的。

    开远程连接的方法在这里
    http://blog.csdn.net/acsu/archive/2007/08/15/1744981.aspx

    其他还有诸如防火墙的问题,建议暂时关闭来测试,测试通过后再开启并打开相应端口。

    Sincerely,
    Kira Qian
    Please mark the replies as answers if they help and unmark if they don't.
    2009年7月23日 2:13
  • 各位老大,我在本地机都可以连接远程SQL。这说明数据库远程连接是正常的。。。。

    我的意思是在别人的电脑上,用一套程序访问我的远程SQL。。。就是没反应。。真是郁闷,,。,

    system.data (sql2005连接方式)难道要同exe一起发布?还是别有dll?


    天为什么这么黑,因为牛在天上飞,牛为什么在天上飞,因为是愚兄在吹
    2009年7月24日 6:11
  • 各位老大,我在本地机都可以连接远程SQL。这说明数据库远程连接是正常的。。。。

    我的意思是在别人的电脑上,用一套程序访问我的远程SQL。。。就是没反应。。真是郁闷,,。,

    system.data (sql2005连接方式)难道要同exe一起发布?还是别有dll?


    天为什么这么黑,因为牛在天上飞,牛为什么在天上飞,因为是愚兄在吹
    因为你的本机有客户端支持库,但是别人的机器里没有啊,所以,你要在别人的机器里,安装一下客户端支持。

    http://hi.baidu.com/2009ajun
    2009年7月25日 1:11
  • 问题是解决了.不知道是什么原因...
    我在客户端加个ODBC连接到远程SQL2005,在ODBC客户端配置里选择TCP连接,端口用1433  (我的远程SQL动态端口一直为1433)
    但实际我的exe是没有用ODBC连接数据库的..我是直接用IP连接远程SQL

    客户端软件就能正常连上远程数据库了.........这种情况是怎么回事.....请老大指点....


    天为什么这么黑,因为牛在天上飞,牛为什么在天上飞,因为是愚兄在吹
    2009年7月25日 17:48
  • 应该是用到ODBC了,只是封装了起来,你不知道而已,或者是你没注意到:)
    就像Java在客户端需要JDBC支持库连接到服务端一样,ODBC也是Windows平台的标准客户端支持库技术之一。
    记得结贴给分哦。O(∩_∩)O哈哈~
    http://hi.baidu.com/2009ajun
    2009年7月25日 21:56
  • 呵呵。。没有实际解决问题。。不过还是谢谢楼上仁兄的解答.

    我用了一个比较傻的办法解决问题了。。

    客户端启动时就检测客户机注册表,没有就写进去。
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\CLient\
    查看有无ConnectTo  建字符串值:服务器IP\sqlpress   数据:DBMSSOCN,服务器IP\sqlpress,1433


    终于松口气了。。希望以后有遇到我同样问题的人能看到本贴。。。



    天为什么这么黑,因为牛在天上飞,牛为什么在天上飞,因为是愚兄在吹
    2009年7月26日 2:52