無法打開登錄請求的數據庫“test”。登錄失敗。用戶'xyz \ ASPNET'登錄失敗我創建了一個將一些數據保存到db的Web服務。但是我收到了這個錯誤:無法打開登錄請求的數據庫“test”。登錄失敗。用戶'xyz \ ASPNET'登錄失敗。我的連接字符串是Data Source=.\SQLExpress;Initial Catalog=IFItest;Integrated Security=True
3 回答

米琪卡哇伊
TA貢獻1998條經驗 獲得超6個贊
要么:“xyz \ ASPNET”不是登錄(在sys.server_principals中)
或者:“xyz \ ASPNET”已設置但未映射到數據庫測試中的用戶(sys.database_principals)
我會選擇第二個選項:錯誤消息暗示默認數據庫不存在或沒有權限,而不是設置為登錄。
測試它是否設置為登錄
SELECT SUSER_ID('xyz\ASPNET') -- (**not** SUSER_SID)
如果為NULL
CREATE LOGIN [xyz\ASPNET] FROM WINDOWS
如果不是NULL
USE test GO SELECT USER_ID('xyz\ASPNET')
如果為NULL
USE test GO CREATE USER [xyz\ASPNET] FROM LOGIN [xyz\ASPNET]

慕虎7371278
TA貢獻1802條經驗 獲得超4個贊
登錄問題的最佳解決方案是在sqlServer中創建登錄用戶。以下是創建使用Windows身份驗證(SQL Server Management Studio)的SQL Server登錄的步驟:
在SQL Server Management Studio中,打開對象資源管理器,然后展開要在其中創建新登錄名的服務器實例的文件夾。
右鍵單擊“安全性”文件夾,指向“新建”,然后單擊“登錄”。
在“常規”頁面上,在“登錄名”框中輸入Windows用戶的名稱。
選擇Windows身份驗證。
單擊確定。
例如,如果用戶名是xyz\ASPNET
,則在登錄名框中輸入此名稱。
您還需要更改用戶映射以允許訪問要訪問的數據庫。
- 3 回答
- 0 關注
- 1081 瀏覽
添加回答
舉報
0/150
提交
取消