如何删除具有db owner权限的SQL Server用户
我需要从SQL Server数据库中删除具有如何删除具有db owner权限的SQL Server用户,sql,sql-server,sql-manager,Sql,Sql Server,Sql Manager,我需要从SQL Server数据库中删除具有dbowner架构的用户。由于收到此错误消息,我无法按原样删除它 删除用户“网络服务”失败。(Microsoft.SqlServer.Smo) 数据库主体在数据库中拥有架构,无法删除。(Microsoft SQL Server,错误:15138) 当我试图取消选中该用户拥有的模式以删除DB所有者时,它什么也不做。我的问题是如何删除此用户或将其名称从'networkservice'编辑为'NT AUTHORITY\networkservice'我遇到了同
dbowner
架构的用户。由于收到此错误消息,我无法按原样删除它
删除用户“网络服务”失败。(Microsoft.SqlServer.Smo)
数据库主体在数据库中拥有架构,无法删除。(Microsoft SQL Server,错误:15138)
当我试图取消选中该用户拥有的模式以删除DB所有者时,它什么也不做。我的问题是如何删除此用户或将其名称从
'networkservice'编辑为'NT AUTHORITY\networkservice'
我遇到了同样的问题,我运行了两个脚本,然后我的问题就解决了
试试这个:
在这个查询中,您可以获得用户模式作为AdventureWorks
数据库的结果
USE AdventureWorks;
SELECT s.name
FROM sys.schemas s
WHERE s.principal_id = USER_ID('your username');
获取架构名称后,您可以按如下方式更改架构上的授权:
ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo;
在该查询中,从第一个查询中获取的模式名为db_owner
最后,您可以删除用户而不会出错
我的来源:我也有同样的问题,我无法删除该用户 福 因为它说: 所以我需要转到Security->Schemas并查找dbo,然后右键单击并选择Properties: 然后改变 福 到 dbo 然后,我现在可以删除我想要删除的用户
通过上述解决方案,我的问题也得到了解决:
SELECT s.name
FROM sys.schemas s
WHERE s.principal_id = USER_ID('your username');
ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo;
在我的例子中,我执行这些命令并解决了问题:
ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo;
ALTER AUTHORIZATION ON SCHEMA::db_datareader TO dbo;
ALTER AUTHORIZATION ON SCHEMA::db_datawriter TO dbo;
首先尝试了公认的答案后,这个选项对我有效(这没有帮助;不确定为什么,它们非常相似)。这个解决方案对我有效。更改所有者的其他解决方案-不工作,当我要删除它时,用户是偷启动错误。
ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo;
ALTER AUTHORIZATION ON SCHEMA::db_datareader TO dbo;
ALTER AUTHORIZATION ON SCHEMA::db_datawriter TO dbo;