遇到一個錯誤如下
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 [用戶名]