问题描述
在建立与服务器的连接时出错。在连接到SQLServer2005时,在默认的设置下SQLServer不允许进行远程连接可能会导致此失败。(provider:命名管道提供程序,error:40-无法打开到SQLServer的连接)说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:在建立与服务器的连接时出错。在连接到SQLServer2005时,在默认的设置下SQLServer不允许进行远程连接可能会导致此失败。(provider:命名管道提供程序,error:40-无法打开到SQLServer的连接)源错误:执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。堆栈跟踪:[SqlException(0x80131904):在建立与服务器的连接时出错。在连接到SQLServer2005时,在默认的设置下SQLServer不允许进行远程连接可能会导致此失败。(provider:命名管道提供程序,error:40-无法打开到SQLServer的连接)]System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnectionowningObject)+428System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnectionowningConnection)+65System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnectionouterConnection,DbConnectionFactoryconnectionFactory)+117System.Data.SqlClient.SqlConnection.Open()+122System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnectionouterConnection,DbConnectionFactoryconnectionFactory)+117System.Data.SqlClient.SqlConnection.Open()+122System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnectionouterConnection,DbConnectionFactoryconnectionFactory)+117System.Data.SqlClient.SqlConnection.Open()+122System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnectionouterConnection,DbConnectionFactoryconnectionFactory)+117System.Data.SqlClient.SqlConnection.Open()+122IBatisNet.DataMapper.SqlMapSession.OpenConnection(StringconnectionString)+283[DataMapperException:Unabletoopenconnectionto"MicrosoftSQLServer,providerV2.0.0.0inframework.NETV2.0".]
解决方案
解决方案二:
数据实例连错了,你打开sql管理器,看看你连接的实例能不能登录
解决方案三:
配置工具——》外围应用配置器——》服务和链接的外围应用配置器——》DatabaseEngine——》远程连接——》勾选本地和远程连接,重启服务
解决方案四:
配置工具--》sqlserver外围配置--》在里面开启远程连接
解决方案五:
连接字符串是否正确开始 -> 所有程序 -> MSSQLServer-> 配置工具 -> Sqlserver外围应用配置器 ->服务和连接的外围应用配置器 -> 打开MSSQLSERVER节点下的Database Engine节点,选择"远程连接",接下来建议选择”同时使用TCP/IP和namedpipes”,确定后,重启数据库服务.
解决方案六:
1:连接字符串看下用户名还是密码是不是写错了2:是否开启远程连接
解决方案七:
配置工具——》外围应用配置器——》服务和链接的外围应用配置器——》DatabaseEngine——》远程连接——》勾选本地和远程连接,重启服务正解
解决方案八:
引用2楼ihandler的回复:
配置工具——》外围应用配置器——》服务和链接的外围应用配置器——》DatabaseEngine——》远程连接——》勾选本地和远程连接,重启服务
+1
解决方案九:
或者是你的连接字符串有问题,仔细检查下
解决方案十:
如果你是sqlserver2005和sqlserver2005EXPRESS(就是VS默认装的那个)在一台计算机上,连接sqlserver2005就这样,停掉sqlserver2005EXPRESS有时自动就好了sqlserver2005默认就开远程连接,sqlserver2005EXPRESS默认禁止
解决方案十一:
数据库服务开启了没,字符串写对了没,服务器地址后面要有express的
解决方案十二:
还是不行啊!我用asp写好了连接文件,然后连接数据库能成功连接并且可以操作数据库。但是放到asp.net里就不行了,怎么办?web.config里是这样写的<addkey="ConnectionString"value="server=192.168.0.1;database=数据库名;uid=账户;pwd=密码"/>还有一个通道.provider.config<providername="sqlServer2.0"enabled="true"default="true"description="MicrosoftSQLServer,providerV2.0.0.0inframework.NETV2.0"assemblyName="System.Data,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089"connectionClass="System.Data.SqlClient.SqlConnection"commandClass="System.Data.SqlClient.SqlCommand"parameterClass="System.Data.SqlClient.SqlParameter"parameterDbTypeClass="System.Data.SqlDbType"parameterDbTypeProperty="SqlDbType"dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"commandBuilderClass="System.Data.SqlClient.SqlCommandBuilder"usePositionalParameters="false"useParameterPrefixInSql="true"useParameterPrefixInParameter="true"parameterPrefix="@"allowMARS="false"/>
解决方案十三:
同样的问题在建立与服务器的连接时出错。在连接到SQLServer2005时,在默认的设置下SQLSnamespacecommon{publicclassClass1{publicconststringconnectstr="server=10.15.43.250;DataSource=qqq;InitialCatalog=UserInfor;UserID=sa;Password=zju308";publicconststringSQlinsert="select*fromUserInfor";publicconststringtablename="UserInfor";}}publicclassClass1{SqlConnectioncon=newSqlConnection(common.Class1.connectstr);SqlDataAdapterada;DataSetds=newDataSet();publicDataSetgetq(/*stringsql,stringtabelname*/){SqlCommandcmd=newSqlCommand(common.Class1.SQlinsert,con);ada=newSqlDataAdapter(cmd);ada.Fill(ds,"UserInfor");returnds;}publicpartialclassDefault2:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){dataSQl.Class1dac=newdataSQl.Class1();DataSetds=dac.getq();this.GridView1.DataSource=ds.Tables["0"].DefaultView;this.GridView1.DataBind();}}server=10.15.43.250server=fuwuqisqlexpress照上面的修改了还是不行我连的是另一台计算机上的数据库
解决方案十四:
该回复于2011-03-11 11:19:26被版主删除
解决方案十五:
安装sql2005吧
解决方案:
引用1楼wisdonlz的回复:
数据实例连错了,你打开sql管理器,看看你连接的实例能不能登录
我的是这个方法解决的!