日期:2014-05-18  浏览次数:20498 次

vs2005中用代码连接sql2005时出错
请高手指点:
我在vs2005中用代码连接sql2005时总提示如下错误:
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
不过用向导可以连接上

------解决方案--------------------
到Microsoft官方去看看http://support.microsoft.com/kb/914277/zh-cn 我按上面的一试就可以
------解决方案--------------------
这个问题太多了,我刚开始用时也出现过这个问题,给资料给你自己去处理吧。
1.此时需要开启sql2005远程连接功能
开始 -- Microsoft SQL Server 2005 -- 配置工具-- SQL Server 外围应用配置器 -- 远程控制 ---- 服务和连接外围应用配置器 SQLEXPRESS -- Database Engine
勾选 本地连接和远程连接,同时使用TCP/IP和name pipes ,确定 。 如下图
 

2.登陆设置改为SQL Server身份验证
开始 -- Microsoft SQL Server 2005 -- SQL Server Management Studio Express,选择Windows 身份验证 连接 ,进去后在左边的 对象资源管理器 的第一项 就是你的服务器名 点右键 属性,选择 安全 选择SQL Server和windows验证模式 如下图:
 
3.设置一个SQL server方式的用户名和密码
开始 -- Microsoft SQL Server 2005 -- SQL Server Management Studio Express,选择Windows 身份验证连接,点上面的新建立查询在右面输入 sp_password null,'123456','sa' ,点上面的执行,这样就设置了一个用户名为sa,密码为:123456的用户,但是现在还不能用用户名sa登陆如下图: 
4.开启sa帐号 
开始 -- Microsoft SQL Server 2005 -- SQL Server Management Studio Express ,选择Windows 身份验证连接,点左面的对象资源管理器--安全性 --登陆名 -- sa 右键属性,点状态 登陆 勾选启用 如下图 
 
5.重启数据库服务器
如下图
 
6.测试连接 vs2005
 
服务器名就是你登陆数据库管理器的时候的服务器名 如 我的是 COMPUTER\SQLEXPRESS
 
以后操作都完成后,就会出现下图,那么,恭喜,连接成功!

------解决方案--------------------
2楼正解。

顺便说下:
另外:
如果出现如下错误:

“/”应用程序中的服务器错误。
用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败。

解决办法:

解决方法:

在sql2005 mange studio里新建一个登录名:NT AUTHORITY\NETWORK SERVICE,

然后把相应的权限赋给它就OK了。比如把你要连接的数据库的dbowner和dbadmin,

db_reader,db_writer等较色赋给它,这样就可以连接了。我的机器只装了这一个网站,

所以没试验多网站共存共用一个sqlserver的时候是否会有其他问题。

如果有问题的话,可能要重新设置下用户:NT AUTHORITY\NETWORK SERVICE

的权限了。