刪除用戶定義的資料庫角色註意事項 無法從資料庫刪除擁有安全對象的角色。 若要刪除擁有安全對象的資料庫角色,必須首先轉移這些安全對象的所有權,或從資料庫刪除它們。 無法從資料庫刪除擁有成員的角色。 若要刪除擁有成員的角色,必須首先刪除角色的成員。 若要刪除資料庫角色中的成員,請使用 ALTER ROL ...
刪除用戶定義的資料庫角色註意事項
無法從資料庫刪除擁有安全對象的角色。 若要刪除擁有安全對象的資料庫角色,必須首先轉移這些安全對象的所有權,或從資料庫刪除它們。
無法從資料庫刪除擁有成員的角色。 若要刪除擁有成員的角色,必須首先刪除角色的成員。
若要刪除資料庫角色中的成員,請使用 ALTER ROLE (Transact-SQL)。
不能使用 DROP ROLE 刪除固定資料庫角色。
在 sys.database_role_members 目錄視圖中可以查看有關角色成員身份的信息。
若要刪除伺服器角色,請使用DROP SERVER ROLE (Transact-SQL)。
要求對資料庫具有 ALTER ANY ROLE 許可權、對角色具有 CONTROL 許可權或具有 db_securityadmin 中的成員身份。
使用SSMS資料庫管理工具刪除用戶定義的資料庫角色
1、連接伺服器-》在對象資源管理器視窗,展開資料庫-》選擇資料庫並展開-》展開安全性-》展開角色-》展開資料庫角色-》選擇要刪除的資料庫角色-》右鍵點擊-》選擇刪除。
2、在刪除對象彈出框-》點擊確定。
3、不需要刷新即可在對象資源管理器視窗看到刪除結果。
使用T-SQL腳本刪除用戶定義的資料庫角色
語法
--聲明資料庫引用
use database_name;
go
--創建用新的資料庫角色之前判斷角色是否已存在,如果已存在則刪除。
if exists(select * from sys.database_principals where name=role_name)
drop role role_name;
go
語法註釋
--語法註釋
--database_name
--引用資料庫名稱
--role_name
--指定要從資料庫刪除的角色。
示例
--聲明資料庫引用
use [testss];
go
--創建用新的資料庫角色之前判斷角色是否已存在,如果已存在則刪除。
if exists(select * from sys.database_principals where name='testrole')
drop role testrole;
go
示例結果:使用T-SQL腳本刪除角色需要刷新資料庫角色文件夾才能查看刪除結果。