无法打开登录'Database1'中请求的数据库。登录失败。用户'sa'登录失败

问题描述:

当我将我的web应用程序部署到Windows Server 2003时,出现了上述错误。我该如何解决?无法打开登录'Database1'中请求的数据库。登录失败。用户'sa'登录失败

Login.aspx.vb

Dim connection As String = System.Configuration.ConfigurationManager.ConnectionStrings("database").ConnectionString() 

Dim mycon As New SqlConnection(connection) 

的Web.config

<connectionStrings> 
    <add name="database" connectionString="Data Source='172.20.145.67';Initial Catalog='Database1';User ID='sa';Password='321'"/> 
</connectionStrings> 

堆栈跟踪

[SqlException (0x80131904): Cannot open database requested in login 'Database1'. Login fails. 
Login failed for user 'sa'.] 
    System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +800131 
    System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +186 
    System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +1932 
    System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +33 
    System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) +172 
    System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) +381 
    System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +181 
    System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +173 
    System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) +357 
    System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) +30 
    System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +424 
    System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +66 
    System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +494 
    System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +82 
    System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +105 
    System.Data.SqlClient.SqlConnection.Open() +111 
    WebApplication1.Login.ImageButton2_Click(Object sender, ImageClickEventArgs e) in C:\Users\Pei Wen\Desktop\SHS\fyp final.16\WebApplication1\Login.aspx.vb:20 
    System.Web.UI.WebControls.ImageButton.OnClick(ImageClickEventArgs e) +86 
    System.Web.UI.WebControls.ImageButton.RaisePostBackEvent(String eventArgument) +115 
    System.Web.UI.WebControls.ImageButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7 
    System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11 
    System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33 
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1746 
+0

好一个! ;-)(填充) – stefan 2011-03-01 08:58:17

您不需要在连接字符串内引用字符串。

<add name="database" connectionString="Data Source=172.20.145.67;Initial Catalog=Database1;User ID=sa;Password=321"/>

+0

它仍然不wrk。 – user596379 2011-03-01 09:02:20

+0

请将它添加到连接字符串中,然后重试。 providerName =“System.Data.SqlClient” – Deepak 2011-03-01 09:04:54

+0

已添加,但仍有该错误。 user596379 2011-03-01 09:07:14

试试这个

<add name="database" connectionString="Data Source=172.20.145.67;Initial Catalog=Database1;User ID=sa;Password=321"/> 

删除单引号

+0

它仍然不起作用。 – user596379 2011-03-01 09:03:53

+0

给单引号会将值转换为另一种格式。 – 2011-03-01 09:06:53

+0

请通过连接sql server来检查您的连接凭据。 – Deepak 2011-03-01 09:08:27