我这边有一个c# winform程序!当它与数据库连接是会出现以下异常提示:
1.我想请教一下,c# winform程序这种程序在连接数据库时,是不是在客服端也要安装上sql??
因为我试了一下台没有有安装的机器,也会爆这个异常!
2.是否必须要安装sql?? 如果不用,那么因该怎么解决?
1、不用装;
2、
检查 sql server 服务器是否允许远程连接;
连接字符串是否正确;
是否有防火墙限制;
1.允许远程连接,因为我的也是连接服务器的数据库的,
2.同一个程序,只是安装不在同的电脑上,我这边可是实现数据库连接, 因此可见连接字符串是正确的?
@暮色纯香: 你只回答了我2个问题,还有防火墙的你没说。当然你也不能只局限于防火墙,也就是说 A 能访问 B,而 C 无法访问 B,那么你就应该在ADO.NET版本和网络上找问题,比如安装了 .Net 4.5 后无法连接到某些版本的 SQL 服务器,降低到 .Net 4.0 (要先把 .Net 4.5 卸载完全)后就能连接。网络问题就比较多,比如防火墙限制,网关限制等等。
@Launcher:
1. 没看到有防火墙设置! 我是在 控制面板——》windows防火墙——》外例 中查看的! 不知是否是这样查看?
2.Net : 以前是有2.0, 3.5、 3.5SP1, 后来我装了4.0的!
@暮色纯香: 防火墙的范围很广的,除了你的机器,还有中间路由节点。这样吧,我看你估计也没有 Sql Server Management Studio,那 Excel 总有吧,打开 Excel,选择“数据”,点击“自其他来源”,选择“来自 Sql Server”,你看能连上不。
@Launcher:
@暮色纯香: 你的这台机器同数据库服务器在网络上能连通吗? sql server 的端口是用的 1433 吗?你先把这两个问题搞清楚了,我们慢慢来,路还长。
@Launcher: 非常感谢你的帮助!好的! 查出来的端口号是1433!
以前我自己的机器也是出现这种想象! 现在想不起来我当初是怎么处理好的了! 呵呵!
不用装,你看下Sqlservice的远程连接服务有没有打开
谢谢你帮忙! 我看了一下 Sqlservice的远程连接服务是打开 的!
@暮色纯香: 能ping通sqlServer服务器不?
@幕三少: 在Dos或命令行下输入telnet 服务器IP 端口、??? 这样是吗?
如果是的话: 其结果是:不能打开到主机的链接,在端口1433连接失败!
这是在我本机上试的! 但我的机子是可以链接上数据库的!
@暮色纯香: 嗯,对!就是telnetIP 端口,也就是你的电脑的Sqlserver可以连接上吗?
@幕三少: 我自己的是可以连上来了的! 我的机器上用SQL Server Management Studio 可以连上服务器! 当其他的就无法链接上!使用的都是同一个账号!
我在其他的机器上用SQL Server Management Studio 可以连上我的数据库,但是无法链接上服务器的数据库!
依我看,是连接字符串没搞对
连接字符串是正确的! 不然在我的机器上也因该是无法连接数据库才对!
是服务器的远程连接没有开启,或者是服务器的防火墙问题。