前言:
將資料庫備份檔案從正式機備份到個人的測試機器,因為原本正式機的使用者物件不一致。需要重新刪除後,重新指定登入的使用者物件。
執行步驟:
Step1.在Microsoft SQL Server Managment Studio ,展開安全性 -> 使用者,滑鼠右鍵點選使
用者,選擇刪除。
Step.2出現刪除視窗後,點選確定,出現下列錯誤訊息。
錯誤訊息:
資料庫主體在資料庫中擁有 結構描述 且無法卸除 (Microsoft SQL Server, 錯誤: 15138)
Error message:
The database principal owns a schema in the database, and cannot be dropped. (Microsoft SQL Server, Error: 15138).

問題排除過程 (solution):
Step.1 在Microsoft SQL Server Managment Studio ,點選工具列上的新增查詢,輸入指令可以查詢到目前結構描述使用狀況。我們發現資料庫占用了其他結構描述。
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA

Step.2 接下來,我們使用下列指令,將所有在此資料庫的結構描述指派給dbo,該資料庫使用者物件即可移除。
ALTER AUTHORIZATION ON SCHEMA::db_owner TO [dbo]

Step.3 刪除使用者物件,成功。

參考資料:
保哥:SQL Server 安全性概論與無法刪除資料庫使用者的解決辦法--
謝謝!
0 留言