分享方式:


sp_droprole (Transact-SQL)

適用於:SQL Server

從目前資料庫移除資料庫角色。

重要

在 SQL Server 2005 (9.x) 中, sp_droprole 已由DROP ROLE 語句取代。 sp_droprole 僅包含與舊版 SQL Server 的相容性,未來版本可能不支援。

Transact-SQL 語法慣例

語法

sp_droprole [ @rolename = ] N'rolename'
[ ; ]

引數

[ @rolename = ] N'rolename'

要從目前資料庫移除的資料庫角色名稱。 @rolename為 sysname,沒有預設值。 @rolename必須已存在於目前資料庫中。

傳回碼值

0 (成功) 或 1 (失敗)。

備註

只能使用 sp_droprole來移除資料庫角色。

無法移除具有現有成員的資料庫角色。 必須先移除資料庫角色的所有成員,才能移除資料庫角色。 若要從角色中移除使用者,請使用 sp_droprolemember。 如果有任何使用者仍然是角色的成員, sp_droprole 則顯示這些成員。

無法移除固定角色和 公用 角色。

如果角色擁有任何安全性實體,則無法移除。 在卸除擁有安全性實體的應用程式角色之前,必須先傳送或卸除安全性實體的擁有權。 使用 ALTER AUTHORIZATION 來變更不可移除之對象的擁有者。

sp_droprole 無法在使用者定義的交易內執行。

權限

CONTROL需要角色的許可權。

範例

下列範例會移除應用程式角色 Sales

EXEC sp_droprole 'Sales';
GO