從當前數(shù)據(jù)庫中刪除角色。提供 sp_dropgroup 是為了向后兼容。在 Microsoft® SQL Server™ 7.0 版中,組作為角色來實現(xiàn)。
sp_dropgroup [ @rolename = ] 'role'
[@rolename =] 'role'
將要從當前數(shù)據(jù)庫刪除的角色。role 的數(shù)據(jù)類型為 sysname,沒有默認值。
0(成功)或 1(失敗)
列名 | 數(shù)據(jù)類型 | 描述 |
---|---|---|
Name | sysname | 角色現(xiàn)有成員的名稱。 |
sp_dropgroup 使用 role 值調(diào)用 sp_droprole 以刪除角色。不能刪除 public、固定服務器、固定數(shù)據(jù)庫或應用程序角色??梢允褂?sp_dropapprole 刪除應用程序角色。
如果角色還擁有任何對象,那么就不能將其刪除。請在刪除角色之前先刪除對象,或者,對于那些不允許刪除的對象,請使用 sp_changeobjectowner 更改其所有者。
此外,如果存在任何角色的成員,那么也不能刪除該角色。可以使用 sp_droprolemember 從角色刪除用戶。如果任何用戶仍然是角色的成員,那么 sp_dropgroup 將顯示這些成員。
不能在用戶定義的事務內(nèi)執(zhí)行 sp_dropgroup。
只有 sysadmin 固定服務器角色、db_securityadmin 或 db_owner 固定數(shù)據(jù)庫角色成員或角色所有者才能執(zhí)行 sp_dropgroup。
下面的示例從當前數(shù)據(jù)庫刪除角色 my_role。
EXEC sp_dropgroup 'my_role'
相關文章