DROP SERVER ROLE (Transact-SQL)
Quita un rol de servidor definido por el usuario.
Los roles de servidor definidos por el usuario son nuevos en SQL Server 2012.
Se aplica a: SQL Server (desde SQL Server 2012 hasta la versión actual). |
Convenciones de sintaxis de Transact-SQL (Transact-SQL)
Sintaxis
DROP SERVER ROLE role_name
Argumentos
- role_name
Especifica el rol de servidor definido por el usuario que se va a quitar del servidor.
Comentarios
Los roles de servidor definidos por el usuario que tienen elementos protegibles no se pueden quitar del servidor. Para quitar un rol de servidor definido por el usuario que tiene elementos protegibles, primero debe transferir la propiedad de esos elementos protegibles o eliminarlos.
Los roles de servidor definidos por el usuario que tienen miembros no se pueden quitar. Para quitar un rol de servidor definido por el usuario que tiene miembros primero debe quitar los miembros del rol mediante ALTER SERVER ROLE.
Los roles fijos de servidor no se pueden quitar.
Puede obtener información acerca de la pertenencia de roles mediante una consulta de la vista de catálogo sys.server_role_members.
Permisos
Requiere el permiso CONTROL en el rol de servidor o el permiso ALTER ANY SERVER ROLE.
Ejemplos
A.Para quitar un rol de servidor
En el siguiente ejemplo se quita el rol de servidor purchasing.
DROP SERVER ROLE purchasing;
GO
B.Para ver la pertenencia al rol
Para ver la pertenencia al rol, utilice la página Rol de servidor (Miembros) de SQL Server Management Studio o ejecute la siguiente consulta:
SELECT SRM.role_principal_id, SP.name AS Role_Name,
SRM.member_principal_id, SP2.name AS Member_Name
FROM sys.server_role_members AS SRM
JOIN sys.server_principals AS SP
ON SRM.Role_principal_id = SP.principal_id
JOIN sys.server_principals AS SP2
ON SRM.member_principal_id = SP2.principal_id
ORDER BY SP.name, SP2.name
C.Para ver la pertenencia al rol
Para determinar si un rol de servidor es propietario de otro rol de servidor, ejecute la siguiente consulta:
SELECT SP1.name AS RoleOwner, SP2.name AS Server_Role
FROM sys.server_principals AS SP1
JOIN sys.server_principals AS SP2
ON SP1.principal_id = SP2.owning_principal_id
ORDER BY SP1.name ;
Vea también
Referencia
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)