![[备忘]删除SQL Server中无登录名的用户 [备忘]删除SQL Server中无登录名的用户](https://image.shishitao.com:8440/aHR0cHM6Ly9ia3FzaW1nLmlrYWZhbi5jb20vdXBsb2FkL2NoYXRncHQtcy5wbmc%2FIQ%3D%3D.png?!?w=700&webp=1)
这个问题通常会在还原虚拟主机的备份SQL文件后发生,原先在虚拟主机上的用户会被还原到本地,但是本地没有权限对其进行操作。
SELECT
N'ALTER AUTHORIZATION ON SCHEMA::'
+ QUOTENAME(SCH.name)
+ N' TO [dbo];',
*
FROM sys.schemas SCH WITH(NOLOCK)
INNER JOIN sys.database_principals DP WITH(NOLOCK)
ON DP.principal_id = SCH.principal_id
WHERE DP.type IN('S', 'G', 'U')
AND DP.name = N'USERNAME' -- 要删除的用户
执行之后,复制首行首列的内容执行,然后再管理器中直接删除对应用户。