遇到一個錯誤如下 System.Data.SqlClient.SqlException HResult=0x80131904 Message=伺服器主體 "用戶名" 無法在當前安全上下文下訪問資料庫 "資料庫名"。 Source=.Net SqlClient Data Provider StackT ...
遇到一個錯誤如下
System.Data.SqlClient.SqlException
HResult=0x80131904
Message=伺服器主體 "用戶名" 無法在當前安全上下文下訪問資料庫 "資料庫名"。
Source=.Net SqlClient Data Provider
StackTrace:
<無法計算異常堆棧跟蹤>
解決方案
查看看到哪些資料庫開了trustworthy屬性,命令如下:
SELECT name, database_id, is_trustworthy_on FROM sys.databases,預設就msdb開的有。
要打開資料庫trustworthy屬性,命令如下:
ALTER DATABASE 資料庫名 SET TRUSTWORTHY ON
授權用戶訪問,命令如下:
ALTER AUTHORIZATION ON DATABASE::資料庫名 TO [用戶名]