還原資料庫後嘗試刪除資料庫使用者,卻遇到錯誤訊息:「無法移除該使用者,因為它擁有物件」。這是因為使用者擁有結構描述,SQL Server 預設禁止直接刪除。本文提供兩種解決路徑:圖形介面修改系統目錄與 T-SQL 重新指派結構描述擁有權(推薦)。
sysusers → 右鍵 開啟資料表 → 傳回所有資料列。



-- 1. 查詢使用者擁有的結構描述
SELECT name FROM sys.schemas WHERE principal_id = USER_ID('目標使用者');
-- 2. 將結構描述擁有權轉移給 dbo
ALTER AUTHORIZATION ON SCHEMA::[結構描述名稱] TO dbo;
-- 若有多個結構描述,逐一執行
-- 3. 刪除資料庫使用者
DROP USER [目標使用者];
-- 4. 若登入帳號也需移除
DROP LOGIN [登入帳號];
allow updates) 風險極高,可能導致資料庫損毀,嚴禁用於生產環境。掌握結構描述擁有權轉移技巧,即可安全、標準地清理遺留使用者帳號。