“在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)”
我太恨这句话了。本以为会很简单的数据库连接,居然困扰了我好几天。问了身边很多人、查了大量资料无果,今天终于在网上找到正确的答案并顺利解决了。究其根本,原因出在server参数设置的问题上。
以下是完整的解决方案:
1.安装一个SQL Server的管理工具(VS2005只有配置工具),据说微软的官方网站有下。
2.开启SQL2005远程连接功能,开启办法如下:
配置工具->SQL server外围应用配置器->服务和连接的外围应用配置器->打开MSSQLSERVER节点下的Database Engine 节点,选择"远程连接",接下建议选择"同时使用TCP/IP和named pipes",确定后,重启数据库服务就可以了.
3.登陆设置改为,SQL server and Windows Authentication方式同时选中,具体设置如下:
manage管理器->Windows Authentication(第一次用Windows方式进去),->对象资源管理器中选择你的数据服务器--右键>属性>security>SQL server and Windows Authentication方式同时选中.
4:设置一个SQL server方式的用户名和密码,具体设置如下:
进入manage管理器后,找到服务器下的Security->Logins->sa,右键属性,设置密码为sa(当然也可以设置其他用户名和密码)这样就设置了一个用户名为sa ,密码为sa的用户,下次在登陆时,可以用SQL server方式,用户名为sa ,密码为:sa的用户进数据库了。
5: 做完上面四步后,这样写连接字符串就可以顺利进入数据库了,
(server=.\\SQLexpress;uid=sa;pwd=sa;database=master");
注意!正确的Server名是这样的,机器名\SQLEXPRESS而不是LOCALHOST,127.0.0.1,MJZG(机器名)比如我的是这样的Server:MJZG\SQLEXPRESS

