C-Sharp

sql server 2008中的本地使用者登錄訪問

  • September 28, 2012

我在 SQL Server 2008 中使用 SQL Server 身份驗證(密碼)創建了一個名為“MynetDB”的本地使用者。伺服器角色public和使用者映射到 2 個數據庫db_ownerpublic. 狀態有Permission to connect database engine:= 授予和Login:= 啟用。

當我嘗試使用 SQL Server 身份驗證連接到伺服器數據庫引擎時,出現錯誤Login failed for user 'MynetDB'. (Microsoft SQL Server, Error: 18456)

我也嘗試使用 C# 程式碼給出相同的錯誤。請告訴我如何訪問數據庫?

編輯: 我在管理工作室也遇到錯誤

C#

<remove name="MyNetDB" />
   <add name="MyNetDB" connectionString="Data Source={ServerName};Initial Catalog=MynetDB;User Id=MynetDB;Password=taD6eg4c;" providerName="System.Data.SqlClient" />

要準確了解發生了什麼,您應該檢查消息中報告的狀態,無論是在事件日誌還是 SQL Server 日誌中。例如:

錯誤:18456,嚴重性:14,狀態:8。

國家通常會幫助縮小確切原因。以下是狀態列表及其含義:

Err  Message
2   Invalid userid 
5   Invalid userid
6   Attempt to use a Windows login name with SQL Authentication
7   Login disabled or password mismatch
8   Password mismatch
9   Invalid password
11   Valid login but server access failure
12   Valid login but server access failure
13   SQL Server service paused
18   Change password required

您需要進入 SQL Server Mgmt Studio GUI,創建適當的 Windows 登錄名,並將權限也分配給該 Windows 使用者或組。

引用自:https://dba.stackexchange.com/questions/9779