满意答案
Iam丑女无敌
2017.02.14
采纳率:58%等级:9
已帮助:113人
本机配置:Win7系统,SQL Server 2008 R2 在360浏览器测试中使用数据库G连接服务测试数据库。
首先,检查数据库允许远程连接,并正确填写数据库连接字符串。PS:连接朋友数据库是正常的。
在网上搜索一些答案。
第一种方法:
运行中输入services.msc,查看SQL相关服务是否全部开通。
启动所有可启动的SQL相关服务完毕,仍未解决问题。
第二种方法:
在配置管理器中设置TCP/IP,1433默认设置端口。
结果SQLEXPRESS协议设置为1433后,重启SQL Server (SQLEXPRESS)出现错误。
然后就不能再启动了。
最后,我个好朋友帮忙,终于解决了问题。
设置如下:
更改SQL Server (SQLEXPRESS)TCP/IP
8099是任意设置的端口(防火墙后面设置)。
此时可启动SQL Server (SQLEXPRESS)
打开控制面板上的防火墙,点击高级设置。
点击入站规则,建立新规则
选择端口,下一步
输入之前的端口8099,下一步
默认允许连接,下一步
默认,下一步
输入名称8099(可任意命名),完成。
回到高级设置界面
成功测试数据库
你的支持是我不竭的动力。如有错误,请纠正。
在与 SQL Server 与网络相关或特定于实例的错误建立连接。未找到或无法访问服务器。请验证实例名是否正确 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
说明: 执行当前 Web 请求期间,未处理的异常。请检查堆栈跟踪信息,了解代码中错误和错误来源的详细信息。
异常细节: System.Data.SqlClient.SqlException: 在与 SQL Server 与网络相关或特定于实例的错误建立连接。未找到或无法访问服务器。请核实实例名是否正确。 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
当出现这个问题时,其实很简单,是不同的数据库版本,地连接方法个一样;注意以下红字部分。我以前是用Server=.;database=jtj;User ID=sa;Password=
改成了Server==.//SQLEXPRESS;Initial Catalog=jtj;User ID=sa;Password=
折腾了很久才做好。
1.开启sql开启2005远程连接功能的方法如下:
配置工具->Sql Server配置器外围应用->服务和连接的配置器外围应用->打开MSSQLSERVER节点下的Database Engine节点,首先选择远程连接TCP/IP和named pipes确定后重启数据库服务。
2.登录设置改为:Sql Server 和 Windows 具体设置如下:
SQL Server Management Studio管理器->Windows 连接服务器的身份验证->在对象资源管理器中选择您的数据服务器->右键->属性->安全性->Sql Server 和 Windows 选择身份验证模式。
3.设置一个Sql Server具体设置如下:
(1)SQL Server Management Studio管理器->Windows 身份验证连接服务器->在对象资源管理器中选择您的数据服务器->展开服务器上的安全->登陆名->在sa点击帐号上的右键------------------------>常规选择选页->更改sa登录帐户密码。这样就设置了用户名sa,密码为:sa123456的用户。
(2)选择选择页的状态->登录修改为启用
4.数据库连接字符串
数据库数据库连接字符串。我相信你自己也见过。他们都晕倒了
Data Server=./SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=服务器名/SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=localhost/SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=.;Initial Catalog=Northwind;User ID=sa;Password=sa123456
Data Server=服务器名;Initial Catalog=Northwind;User ID=sa;Password=sa123456
……
到底什么样的正确?如果是,这与数据库版本有关Sql Server 2005 Express版本必须有//SQLEXPRESS”。如果字符串被定义为变量,VS2005会在/下加一条红色波浪线,提示你/S它是一个无法识别的转义序列,所以如果字符串被定义为变量,它应该写成Server=.//SQLEXPRESS
00分享举报