csjoz11

导航

统计

sqlserver 服务器主体 无法在当前安全上下文下访问数据库

SELECT name, database_id, is_trustworthy_on FROM sys.databases


ALTER DATABASE bole_data SET TRUSTWORTHY ON

ALTER AUTHORIZATION ON DATABASE::bole_data TO bole

 

今天使用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 [用户名]
————————————————
版权声明:本文为CSDN博主「lhrcylhr」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lhrcylhr/article/details/99292653

posted on   csjoz11  阅读(1044)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示