ASP.NET连接数据库时出现如下错误,该怎么办?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET连接数据库时出现如下错误,该怎么办?相关的知识,希望对你有一定的参考价值。

用户代码未处理 System.Data.SqlClient.SqlException
Message=已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: Shared Memory Provider, error: 0 - 管道已结束。)
Source=.Net SqlClient Data Provider
ErrorCode=-2146232060
Class=20
LineNumber=0
Number=109
Server=.\SQLEXPRESS
State=0
StackTrace:
在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
在 System.Data.SqlClient.SqlConnection.Open()
在 DbHelperSQL.PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, CommandType cmdType, String cmdText, SqlParameter[] cmdParms) 位置 C:\Documents and Settings\Administrator\桌面\DotNet.SQLServer\DbHelperSQL.cs:行号 1058
在 DbHelperSQL.ExecuteScalar(CommandType cmdType, String cmdText, SqlParameter[] cmdParms) 位置 C:\Documents and Settings\Administrator\桌面\DotNet.SQLServer\DbHelperSQL.cs:行号 1036
在 DotNet.SQLServer.DiscussControler.GetDiscussCount() 位置 C:\Documents and Settings\Administrator\桌面\DotNet.SQLServer\DiscussControler.cs:行号 294
在 DotNet.discuss.index.dlBinder() 位置 C:\Documents and Settings\Administrator\桌面\DotNet\discuss\index.aspx.cs:行号 50
在 DotNet.discuss.index.Page_Load(Object sender, EventArgs e) 位置 C:\Documents and Settings\Administrator\桌面\DotNet\discuss\index.aspx.cs:行号 40
在 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
在 System.Web.UI.Control.OnLoad(EventArgs e)
在 System.Web.UI.Control.LoadRecursive()
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
InnerException:

这是比较全的一个解释。看了之后,相信你可以找到你的错误原因了。如下:

一、为 SQL 启用远程连接

1. 单击“开始”,依次指向“程序”、“Microsoft SQL Server 2005”和“配置工具”,然后单击“SQL Server 外围应用配置器”。
2. 在“SQL Server 2005 外围应用配置器”页上,单击“服务和连接的外围应用配置器”。
3. 在“服务和连接的外围应用配置器”页上,展开“数据库引擎”,依次单击“远程连接”和“本地连接和远程连接”,单击适用于您的环境的相应协议,然后单击“应用”。
注意:请在接收到以下消息时单击“确定”:
直到重新启动数据库引擎服务后,对连接设置所做的更改才会生效。
4. 在“服务和连接的外围应用配置器”页上,展开“数据库引擎”,依次单击“服务”和“停止”,等待 MSSQLSERVER 服务停止,然后单击“启动”以重新启动 MSSQLSERVER 服务。
二、启用 SQL Server Browser 服务
1. 单击“开始”,依次指向“程序”、“Microsoft SQL Server 2005”和“配置工具”,然后单击“SQL Server 外围应用配置器”。
2. 在“SQL Server 2005 外围应用配置器”页上,单击“服务和连接的外围应用配置器”。
3. 在“服务和连接的外围应用配置器”页上,单击“SQL Server Browser”,在“启动类型”中单击“自动”选项,然后单击“应用”。
注意:在单击“自动”选项后,每次启动 Microsoft Windows 时将自动启动 SQL Server Browser 服务。
4. 单击“启动”,然后单击“确定”。
三、在 Windows 防火墙中为SQL Server 2005 创建例外
1. 在 Windows 防火墙中,单击“例外”选项卡,然后单击“添加程序”。
2. 在“添加程序”窗口中,单击“浏览”。
3. 单击 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe 可执行程序,单击“打开”,然后单击“确定”。
注意:上述路径可能会根据 SQL Server 2005 的安装位置而不同。
四、在 Windows 防火墙中为 SQL Server Browser 服务创建例外
1. 在 Windows 防火墙中,单击“例外”选项卡,然后单击“添加程序”。
2. 在“添加程序”窗口中,单击“浏览”。
3. 单击 C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe 可执行程序,单击“打开”,然后单击“确定”。
注意:上述路径可能会根据 SQL Server 2005 的安装位置而不同。
五、远程连接端口设置(很关键的一步,很多方法只讲了一到四步,却没有讲到第五步)
1、在服务器上打开SQL Server Configuration Manager。选择SQL Server配置治理器->SQL Server 2005网络配置->MSSQLSERVER的协议->TCP/IP,在弹出对话框中选择IP地址->IPALL->TCP端口,设置为可用端口。(如果默认的1433端口老是连接不上,你就设置为你确认已经打开的端口试试,如21端口等)
2、在“服务和连接的外围应用配置器”页上,展开“数据库引擎”,依次单击“服务”和“停止”,等待 MSSQLSERVER 服务停止,然后单击“启动”以重新启动 MSSQLSERVER 服务。

按照上面的步骤,就可以完成远程连接数据库的功能!

可以在本机进行测试:打开SQL2005,登陆时输入自己的IP,用户名,密码进行测试!
参考技术A 如果你连接的是远程服务器,是远程服务器不允许链接。
打开SQL SERVER 2005菜单中的配置工具下的SQL SERVER Configuration Manager.点击窗体中,打开SQL SERVER 2005 网络配置的下节点,选择MSSQLSERVER的协议。把右边窗口的TCP/IP的属性已禁用,改为已启用,就OK了

我用sqlplus能连接oracle数据库,但用plsql连接时出现 ora 12560协议适配器错误,该怎么办?

这是启动的服务

这是登陆界面

这是报错信息

这是系统变量

求好心的大神帮帮忙,小弟第一次提问,这个问题已经困扰我好几天了,我总共才15分,全给了,求好心人帮帮忙,谢谢!

PL\\/SQL和SQL*PLUS走的不是一个Tnsnames.ora。找找有几个Tnsnames,都改成正确的配置。或者修改环境变量中的path路径,把正确的路径写在前面。追问

tnsnames都按网上找到的改成了正确配置,而且环境变量中的path路径也已经设置好了,但还是没解决

参考技术A 将localhost 修改为127.0.0.1,先测试你的服务是否能连通,之后测试plsql是否能链接成功追问

之前我试过这方法,还是不能解决

追答

加这个我帮你远程看看513842343

追问

已解决,后面自己找到了原因,谢谢

参考技术B 您好,问题是怎么解决的,我也遇到了同样的问题啦

以上是关于ASP.NET连接数据库时出现如下错误,该怎么办?的主要内容,如果未能解决你的问题,请参考以下文章

创建ASP.NET时出现错误:路径与URL不符

Asp.Net 在运行存储过程时出现超时错误

asp.net求助

[ASP.NET Core Web应用上使用个人用户帐户存储在应用程序中的Postman模拟登录时出现400错误请求错误

从 ASP.NET 访问“用户实例”数据库时出现用户权限错误

ASP.NET - 在 VS 2017 中浏览 Nuget 包时出现“根级别的数据无效”错误