广告
淘宝内部优惠券
当前位置: 开发异常方案库» .NET技术 » 无法打开登录所请求的数据库 "xxx"。登录失败。用户 'sa' 登录失败。

无法打开登录所请求的数据库 "xxx"。登录失败。用户 'sa' 登录失败。

开发异常方案库  收集整理于:2020-05-18 11:01:00  浏览:66次
SA的帐号密码本地可以登录。。。 ------------------------------------------报错提示
 
无法打开登录所请求的数据库 "yrdddp"。登录失败。
用户 'sa' 登录失败。 
  说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 
 异常详细信息: System.Data.SqlClient.SqlException: 无法打开登录所请求的数据库 "yrdddp"。登录失败。
用户 'sa' 登录失败。
源错误: 
执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  
堆栈跟踪: 
[SqlException (0x80131904): 无法打开登录所请求的数据库 "yrdddp"。登录失败。
用户 'sa' 登录失败。]
   System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling) +1394
   System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions) +1120
   System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions) +70
   System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) +910
   System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) +114
   System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) +1637
   System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) +117
   System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) +267
   System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) +318
   System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) +211
   System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) +393
   System.Data.SqlClient.SqlConnection.Open() +122
   System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure) +41
[EntityException: 基础提供程序在 Open 上失败。]
   System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure) +212
   System.Data.EntityClient.EntityConnection.Open() +138
   System.Data.Objects.ObjectContext.EnsureConnection() +84
   System.Data.Objects.ObjectContext.ExecuteStoreQueryInternal(String commandText, String entitySetName, MergeOption mergeOption, Object[] parameters) +109
   web.index.Page_Load(Object sender, EventArgs e) +557
   System.Web.UI.Control.OnLoad(EventArgs e) +109
   System.Web.UI.Control.LoadRecursive() +68
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4498
 
========================================================================-------Web.config
<?xml version="1.0" encoding="UTF-8"?>
<!--
  有关如何配置 ASP.NET 应用程序的详细信息,请访问
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
	<connectionStrings>
		<add name="n_xy28_dataEntities" connectionString="metadata=res://*/App_Model.csdl|res://*/App_Model.ssdl|res://*/App_Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=yrdddp;user id=sa;password=Aasi#shang@%132*;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
	</connectionStrings>
	<appSettings>
		<add key="phoneuname" value="a745125953" />
		<add key="phonepass" value="564ds564d6s4dd54" />
	</appSettings>
	<system.web>
		<globalization requestEncoding="GB2312" responseEncoding="GB2312" />
		<httpRuntime requestValidationMode="2.0" />
		<compilation targetFramework="4.0">
			<assemblies>
				<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
			</assemblies>
		</compilation>
		<pages enableSessionState="true" enableViewState="false" enableViewStateMac="false" controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID" />
		<roleManager defaultProvider="AspNetWindowsTokenRoleProvider" />
	</system.web>
	<system.webServer>
		<modules runAllManagedModulesForAllRequests="true" />
		<directoryBrowse enabled="true" />
	</system.webServer>
	<system.serviceModel>
		<bindings />
		<client />
	</system.serviceModel>
</configuration>

------网友观点--------------------

------网友观点--------------------
学数据库第一节课的时候 我记得就应该知道"sa登陆失败" 是什么原因吧.. 如果你还不知道.建议离职

------网友观点--------------------
data source=. 如果你的程序运行在本机,这么写连接字符串木有问题 如果在其他机器运行,连本机的数据库,把data source改成你的机器ip或者机器名 另外,保证你的数据库允许远程连接

------网友观点--------------------
提示这么明显,还要怎么回答你

------网友观点--------------------
可到底是什么原因啊? 报错并不是找不到服务器, 楼主说用户名密码本地可登录说明是正确的, 不知道他说的本地是不是指数据库服务器, 不知道web服务器和数据库服务器是不是同一台 。。。

------网友观点--------------------
场景模拟了一下:当server uid pwd正确,但database不正确时,报错与楼主一致。 难道说。。。

------网友观点--------------------
多自己检查检查,是不是sqlserver服务没开啊,是不是数据库名称错了啊,是不是用户名和密码不对啊。。。。

------网友观点--------------------
这个问题好难,不会。

------网友观点--------------------
  <add name="n_xy28_dataEntities" connectionString="metadata=res://*/App_Model.csdl|res://*/App_Model.ssdl|res://*/App_Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=yrdddp;user id=sa;password=Aasi#shang@%132*;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
data source=.是本地数据库,你本机数据库没开或者这应该是服务器地址

------网友观点--------------------
引用 2 楼 diaodiaop 的回复:
学数据库第一节课的时候 我记得就应该知道"sa登陆失败" 是什么原因吧.. 如果你还不知道.建议离职
sa登录失败的原因很多而你未必全部知道,这是事实,既然我遇到了这个问题,并且提问,肯定百度没找到解决原因。 我没有入职,何谈离职,切莫以己度人,这只是暴露你需要好好打你的工。

------网友观点--------------------
用其它方式SQL可以正常访问。。

------网友观点--------------------
引用 6 楼 myheadachecase 的回复:
场景模拟了一下:当server uid pwd正确,但database不正确时,报错与楼主一致。 难道说。。。
database 确定正确。。

------网友观点--------------------
还要怎么拯救你?

------网友观点--------------------
引用 5 楼 myheadachecase 的回复:
可到底是什么原因啊? 报错并不是找不到服务器, 楼主说用户名密码本地可登录说明是正确的, 不知道他说的本地是不是指数据库服务器, 不知道web服务器和数据库服务器是不是同一台 。。。
本地是指的服务器上访问SQL。。。web和数据库,以及用其它方式连接SQL均在同一服务器操作

------网友观点--------------------
引用 3 楼 lovelj2012 的回复:
data source=. 如果你的程序运行在本机,这么写连接字符串木有问题 如果在其他机器运行,连本机的数据库,把data source改成你的机器ip或者机器名 另外,保证你的数据库允许远程连接
程序是本机。不属于粗心导致原因。所以提问

------网友观点--------------------
按照你的说法,其实就是写错了啊。 1  服务器地址写错。 2  数据库名写错 3  账号密码写错。 大多就这几个问题。 服务器名写错的概率最大。因为一般是ip+端口。 有些或者直接写计算机名

------网友观点--------------------
sa的用户没有启用 http://blog.csdn.net/ddjj_1980/article/details/74940593 

------网友观点--------------------
引用 16 楼 hanjun0612 的回复:
按照你的说法,其实就是写错了啊。 1  服务器地址写错。 2  数据库名写错 3  账号密码写错。 大多就这几个问题。 服务器名写错的概率最大。因为一般是ip+端口。 有些或者直接写计算机名
你说的3个问题都仔细检查过。。确定没错。。还用别的SQL工具连接测试过了啊。。所以一时不知道什么原因。

------网友观点--------------------
引用 16 楼 hanjun0612 的回复:
按照你的说法,其实就是写错了啊。 1  服务器地址写错。 2  数据库名写错 3  账号密码写错。 大多就这几个问题。 服务器名写错的概率最大。因为一般是ip+端口。 有些或者直接写计算机名
跟这个没关系。。SA没启用我用其它方式不可能连接成功

------网友观点--------------------
我发觉额。 pwd=Aasi#shang@%132* webconfig中对于特殊符号没有处理 http://blog.csdn.net/qiuyu8888/article/details/8024255

------网友观点--------------------
肯定是这个问题了。

------网友观点--------------------
既然是web服务器与数据库服务器是一起,尝试用windows身份认证登录,下列连接字符串修改一下再做个尝试? <add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=DBName" /> 

------网友观点--------------------
引用 20 楼 hanjun0612 的回复:
我发觉额。 pwd=Aasi#shang@%132* webconfig中对于特殊符号没有处理 http://blog.csdn.net/qiuyu8888/article/details/8024255
修改sa的密码为123456,更改webconfig对应密码,然后从启IIS和MSSQL,还是同样问题。用NavicatServer却可以连接MSSQL

------网友观点--------------------
引用 21 楼 hanjun0612 的回复:
肯定是这个问题了。
你好,方便留个QQ帮忙排错下么。。愿意支付酬劳。实在找不到原因。。我是在服务器上可以直接登录

------网友观点--------------------
 你把数据库连接那句删掉,重新自己写一遍

------网友观点--------------------
引用 23 楼 hackerbing 的回复:
修改sa的密码为123456,更改webconfig对应密码,然后从启IIS和MSSQL,还是同样问题。用NavicatServer却可以连接MSSQL
那你换个字符串试试,source=服务器ip;database=数据库;uid=sa;pwd=sasa这样的

------网友观点--------------------
我突然觉得 你不仅仅不知道什么是用户登陆失败 密码错误这个中文的意思. 甚至 你连"实例名" 都不知道是什么... 我虽然不知道你用工具里面输入.为什么可以 .. (我猜是把.自动转换成本机实例了) 但是很明显 你登陆后的"实例" 根本就不是.

------网友观点--------------------
看看远程管道是否开启。 sql browser 是否启动。

------网友观点--------------------
我sa连接不上是因为我连接是数据库中的表tb_test,而连接数据库Text就没问题了。

------网友观点--------------------
用户sa能够访问数据库base是需要有对应权限的,否则会提示登录失败。

------网友观点--------------------
看看这些个地方,有没有选中对应的数据库

------网友观点--------------------
你数据库怎么来的,是不是在sa账号下建立的?

------网友观点--------------------
引用 29 楼 qq_41070163 的回复:
我sa连接不上是因为我连接是数据库中的表tb_test,而连接数据库Text就没问题了。
你也可以看下我的建议

------网友观点--------------------
引用 33 楼 手在键盘敲很轻 的回复:
Quote: 引用 29 楼 qq_41070163 的回复:
我sa连接不上是因为我连接是数据库中的表tb_test,而连接数据库Text就没问题了。
你也可以看下我的建议
我是因为我数据库表名打错连接失败,我知道是啥原因

------网友观点--------------------

------网友观点--------------------
发布此文章仅为传递网友分享,不代表本站观点,若侵权请联系我们删除,本站将不对此承担任何责任。
软件开发 程序错误 异常 ybaby.netCopyright © 2020-2026  ybaby 版权所有  桂ICP备17004385号-2 网站地图