DROP ROLE (Transact-SQL)

從資料庫中移除角色。

主題連結圖示 Transact-SQL 語法慣例

語法

DROP ROLE role_name

引數

  • role_name
    指定要從資料庫卸除的角色。

備註

擁有安全性實體的角色,不可以從資料庫卸除。 若要卸除一個擁有安全性實體的資料庫角色,必須先傳送那些安全性實體的擁有權,或者從資料庫卸除它們。 含有成員的角色,不可以從資料庫卸除。 若要卸除一個含有成員的角色,必須先移除該角色的成員。

若要從資料庫移除成員,請使用 ALTER ROLE (Transact-SQL)

您不可以利用 DROP ROLE 來卸除固定資料庫角色。

您可以在 sys.database_role_members 目錄檢視中,檢視角色成員資格的相關資訊。

警告注意事項注意

從 SQL Server 2005 開始,結構描述的行為已經變更。結果是,假設結構描述相當於資料庫使用者的程式碼可能不會傳回正確的結果。不應該在曾經使用下列任何一個 DDL 陳述式的資料庫中使用舊的目錄檢視 (包括 sysobjects):CREATE SCHEMA、ALTER SCHEMA、DROP SCHEMA、CREATE USER、ALTER USER、DROP USER、CREATE ROLE、ALTER ROLE、DROP ROLE、CREATE APPROLE、ALTER APPROLE、DROP APPROLE、ALTER AUTHORIZATION。在此類資料庫中,必須改用新的目錄檢視。新的目錄檢視會考量 SQL Server 2005 中所導入的主體和結構描述的分隔。如需目錄檢視的詳細資訊,請參閱<目錄檢視 (Transact-SQL)>。

若要移除伺服器角色,請使用 DROP SERVER ROLE (Transact-SQL)

權限

需要資料庫的 ALTER ANY ROLE 權限、角色的 CONTOL 權限,或 db_securityadmin 的成員資格。

範例

下列範例會從 AdventureWorks2012 卸除資料庫角色 purchasing。

USE AdventureWorks2012;
DROP ROLE purchasing;
GO

請參閱

參考

CREATE ROLE (Transact-SQL)

ALTER ROLE (Transact-SQL)

EVENTDATA (Transact-SQL)

sp_addrolemember (Transact-SQL)

sys.database_role_members (Transact-SQL)

sys.database_principals (Transact-SQL)

安全性函數 (Transact-SQL)

概念

主體 (Database Engine)