SQLServer之刪除用戶定義的數據庫角色


刪除用戶定義的數據庫角色注意事項

無法從數據庫刪除擁有安全對象的角色。 若要刪除擁有安全對象的數據庫角色,必須首先轉移這些安全對象的所有權,或從數據庫刪除它們。 

無法從數據庫刪除擁有成員的角色。 若要刪除擁有成員的角色,必須首先刪除角色的成員。

若要刪除數據庫角色中的成員,請使用 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腳本刪除角色需要刷新數據庫角色文件夾才能查看刪除結果。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM