为什么数据库读取失败

xxxcloud 2012-02-21 03:36:46
有一个网页程序,在昨天都还可连上数据库,今天总是弹出这种问题
想问一下怎么解决。

“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

System.Data.SqlClient.SqlException (0x80131904): 已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: Shared Memory Provider, error: 0 - 管道的另一端上无任何进程。)
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
在 System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
在 System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
在 System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
在 System.Data.SqlClient.TdsParserStateObject.ReadBuffer()
在 System.Data.SqlClient.TdsParserStateObject.ReadByte()
在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
在 System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
在 System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, SqlConnection owningObject)
在 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout)
在 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
在 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
在 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
在 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()
在 Power.DataBridge.GetRowCount.GetScalarObjectMain(Database db, String sql, List`1 parameters, CommandType commandType) 位置 E:\加宝\站点\DataComm\DataCommon.cs:行号 1126
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

源错误:


行 24: parm.Value = solutionName;
行 25: parms.Add(parm);
行 26: object o = Power.DataBridge.GetRowCount.GetScalarObject(sb.ToString(), parms, CommandType.Text);
行 27: return (o == null) ? 0 : Convert.ToInt32(o);
行 28: }


源文件: E:\程序\餐饮\餐饮\DAL\SystemDAL.cs 行: 26

堆栈跟踪:


[Exception: System.Data.SqlClient.SqlException (0x80131904): 已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: Shared Memory Provider, error: 0 - 管道的另一端上无任何进程。)
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
在 System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
在 System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
在 System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
在 System.Data.SqlClient.TdsParserStateObject.ReadBuffer()
在 System.Data.SqlClient.TdsParserStateObject.ReadByte()
在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
在 System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
在 System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, SqlConnection owningObject)
在 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout)
在 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
在 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
在 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
在 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()
在 Power.DataBridge.GetRowCount.GetScalarObjectMain(Database db, String sql, List`1 parameters, CommandType commandType) 位置 E:\加宝\站点\DataComm\DataCommon.cs:行号 1126]
Power.DataBridge.GetRowCount.GetScalarObjectMain(Database db, String sql, List`1 parameters, CommandType commandType) in E:\加宝\站点\DataComm\DataCommon.cs:1135
Power.DataBridge.GetRowCount.GetScalarObject(String sql, List`1 parameters, CommandType commandType) in E:\加宝\站点\DataComm\DataCommon.cs:1175
INGS.Channel.DAL.SystemDAL.GetSolutionIDByName(String solutionName) in E:\程序\餐饮\餐饮\DAL\SystemDAL.cs:26
INGS.Channel.Controllers.BaseController.GetSolutionID() in E:\程序\餐饮\餐饮\Controllers\Common\BaseController.cs:54
INGS.Channel.Controllers.HomeController.Index() in E:\程序\餐饮\餐饮\Controllers\HomeController.cs:22
lambda_method(Closure , ControllerBase , Object[] ) +62
System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +17
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +199
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +27
System.Web.Mvc.<>c__DisplayClassd.<InvokeActionMethodWithFilters>b__a() +56
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation) +267
System.Web.Mvc.<>c__DisplayClassf.<InvokeActionMethodWithFilters>b__c() +20
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +190
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +345
System.Web.Mvc.Controller.ExecuteCore() +115
System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +42
System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext) +10
System.Web.Mvc.<>c__DisplayClass8.<BeginProcessRequest>b__4() +34
System.Web.Mvc.Async.<>c__DisplayClass1.<MakeVoidDelegate>b__0() +21
System.Web.Mvc.Async.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult _) +12
System.Web.Mvc.Async.WrappedAsyncResult`1.End() +55
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +43
System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +8863473
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +184




--------------------------------------------------------------------------------
...全文
346 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xxxcloud 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 michael_zhang0119 的回复:]
引用 10 楼 xxxcloud 的回复:
引用 8 楼 michael_zhang0119 的回复:
可以試試看用windows驗證的方式,不用混合驗證的方式。
代碼部份部份稍微修改一下
<add name="ApplicationServices" connectionString="server=.;database=INGS_ADMIN;integrated security=tr……
[/Quote]
谢谢。真不错。
MicroWare 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 xxxcloud 的回复:]
引用 8 楼 michael_zhang0119 的回复:
可以試試看用windows驗證的方式,不用混合驗證的方式。
代碼部份部份稍微修改一下
<add name="ApplicationServices" connectionString="server=.;database=INGS_ADMIN;integrated security=true" providerName="Syste……
[/Quote]


我以前好像也遇到過這個問題的。
後來改一下驗證方式就可以了,可能用混合認證有時候是會吊詭
很幸運,對你來說有幫助
xxxcloud 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 michael_zhang0119 的回复:]
可以試試看用windows驗證的方式,不用混合驗證的方式。
代碼部份部份稍微修改一下
<add name="ApplicationServices" connectionString="server=.;database=INGS_ADMIN;integrated security=true" providerName="System.Data.SqlClient" />
[/Quote]
你的这个代码嫩不能解释一下。
我修改了以后就可以了。
那能不能知道问题是在哪里呢?
覃祖甘 2012-02-21
  • 打赏
  • 举报
回复
你在本地添加一个DataSource,在本地测试链接,看看能不能解决?
如果链不上,你要检查你数据库的密码和用户名对不对?
MicroWare 2012-02-21
  • 打赏
  • 举报
回复
可以試試看用windows驗證的方式,不用混合驗證的方式。
代碼部份部份稍微修改一下
<add name="ApplicationServices" connectionString="server=.;database=INGS_ADMIN;integrated security=true" providerName="System.Data.SqlClient" />
xxxcloud 2012-02-21
  • 打赏
  • 举报
回复
我是本机网页报错
大雷神 2012-02-21
  • 打赏
  • 举报
回复
是不是 数据库字段是不是加密了???
米娅 2012-02-21
  • 打赏
  • 举报
回复
你的是本机上的网页运行报错还是访问其他服务器的网页?
然后服务器的IP是否是动态IP
如果是访问其他服务器的网页,你是否可以用SQL server访问登录
如果可以登录,确定你账号与密码,在查看一下网页的连接数据库的字符串

xxxcloud 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 a346729576 的回复:]
看看你的sql server 能不能打开 或者能不能登录
[/Quote]

我的数据库可以打开
连接也没有问题
数据库连接源码是
<connectionStrings>
<add name="ApplicationServices" connectionString="server=.;uid=sasa;pwd=123456;database=INGS_ADMIN" providerName="System.Data.SqlClient" />
<add name="SiteDataSource" connectionString="server=.;uid=sasa;pwd=123456;database=INGS_MAIN" providerName="System.Data.SqlClient" />
</connectionStrings>
id 和 pwd都是对的,
可是就是连不上
MicroWare 2012-02-21
  • 打赏
  • 举报
回复
可以貼出你連接數據庫的源碼么???
夜色镇歌 2012-02-21
  • 打赏
  • 举报
回复
看看你的sql server 能不能打开 或者能不能登录
SomethingJack 2012-02-21
  • 打赏
  • 举报
回复
没遇到过- - 友情顶

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧