今天使用sqlserver,發現了一個問題,就是使用 insert into 數據庫名.dbo.表名(字段) values(值) 這樣語句的時候,會返回錯誤: sqlserver 服務器主體 無法在當前安全上下文下訪問數據庫。 于是在網上找了一下資料,發現是因為trustworthy數據庫屬性用于指明
今天使用sqlserver,發現了一個問題,就是使用 insert into 數據庫名.dbo.表名(字段) values(值) 這樣語句的時候,會返回錯誤:sqlserver 服務器主體 無法在當前安全上下文下訪問數據庫。
于是在網上找了一下資料,發現是因為trustworthy數據庫屬性用于指明 SQL Server 實例是否信任該數據庫以及其中的內容。默認情況下,此設置為 OFF,但是可以使用 ALTER DATABASE 語句將其設置為 ON。
查看看到哪些數據庫開了trustworthy屬性,命令如下:
SELECT name, database_id, is_trustworthy_on FROM sys.databases,默認就msdb開的有。
要打開數據庫trustworthy屬性,命令如下:
ALTER DATABASE 數據庫名 SET TRUSTWORTHY ON
授權用戶訪問,命令如下:
ALTER AUTHORIZATION ON DATABASE::數據庫名 TO [用戶名]
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com