我正在嘗試使用以下命令洗掉 SQL 登錄:
USE [myDB]
GO
ALTER ROLE [db_owner] DROP MEMBER [abc]
GO
USE [myDB]
GO
DROP USER [abc]
GO
USE [master]
ALTER SERVER ROLE [sysadmin] DROP MEMBER [abc]
GO
USE [master]
DROP LOGIN [abc]
GO
但是 SQL 回傳以下錯誤:
Login 'abc' owns one or more database(s). Change the owner of the database(s) before dropping the login.
服務器上沒有其他(非系統)資料庫,我只是從角色 DB_owner 中洗掉了登錄名——這是怎么回事?
uj5u.com熱心網友回復:
db_owner具有角色的用戶與資料庫的所有者不同。
您應該使用ALTER AUTHORIZATION將資料庫的所有權授予另一個主體。
如果您獲得用戶的 SID,那么您可以查詢sys.databases目錄視圖(特別是owner_sid列)以發現他們當前擁有哪些資料庫。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/422521.html
標籤:
