Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Tar bort en databasroll från den aktuella databasen.
Important
I SQL Server 2005 (9.x) sp_droprole ersattes det av satsenDROP ROLE.
sp_droproleingår endast för kompatibilitet med tidigare versioner av SQL Server och kan komma att inte stöds i en framtida version.
Transact-SQL syntaxkonventioner
Syntax
sys.sp_droprole [ @rolename = ] N'rolename'
[ ; ]
Arguments
[ @rolename = ] N'rollnamn'
Namnet på databasrollen som ska tas bort från den aktuella databasen. @rolename är sysname, utan standard. @rolename måste redan finnas i den aktuella databasen.
Returnera kodvärden
0 (lyckades) eller 1 (fel).
Remarks
Endast databasroller kan tas bort genom att använda sp_droprole.
En databasroll med befintliga medlemmar kan inte tas bort. Alla medlemmar i en databasroll måste tas bort innan databasrollen kan tas bort. För att ta bort användare från en roll, använd sp_droprolemember. Om några användare fortfarande är medlemmar i rollen, sp_droprole visas dessa medlemmar.
Fasta roller och den offentliga rollen kan inte tas bort.
En roll kan inte tas bort om den äger några värdepapper. Innan du tar bort en programroll som äger skyddsbara objekt måste du först överföra ägarskapet för skyddsbara objekt eller släppa dem. Använd ALTER AUTHORIZATION för att byta ägare till objekt som inte får tas bort.
sp_droprole kan inte köras i en användardefinierad transaktion.
Permissions
Kräver CONTROL tillstånd för rollen.
Examples
Följande exempel tar bort applikationsrollen Sales.
EXECUTE sp_droprole 'Sales';
GO