sp_helpsrvrole (Transact-SQL)
Applies to: SQL Server
Returns a list of the SQL Server fixed server roles.
Transact-SQL syntax conventions
Syntax
sp_helpsrvrole [ [ @srvrolename = ] N'srvrolename' ]
[ ; ]
Arguments
[ @srvrolename = ] N'srvrolename'
The name of the fixed server role. @srvrolename is sysname, with a default of NULL
, and can be one of the following values.
Fixed server role | Description |
---|---|
sysadmin | System administrators |
securityadmin | Security administrators |
serveradmin | Server administrators |
setupadmin | Setup administrators |
processadmin | Process administrators |
diskadmin | Disk administrators |
dbcreator | Database creators |
bulkadmin | Can execute BULK INSERT statements |
Return code values
0
(success) or 1
(failure).
Result set
Column name | Data type | Description |
---|---|---|
ServerRole |
sysname | Name of the server role |
Description |
sysname | Description of ServerRole |
Remarks
Fixed server roles are defined at the server level and have permissions to perform specific server-level administrative activities. Fixed server roles can't be added, removed, or changed.
To add or removed members from server roles, see ALTER SERVER ROLE.
All logins are a member of public. sp_helpsrvrole
doesn't recognize the public role because, internally, SQL Server doesn't implement public as a role.
sp_helpsrvrole
doesn't take a user-defined server role as an argument. To list the user-defined server roles, see the examples in ALTER SERVER ROLE.
Permissions
Requires membership in the public role.
Examples
A. List the fixed server roles
The following query returns the list of fixed server roles.
EXEC sp_helpsrvrole;
B. List fixed and user-defined server roles
The following query returns a list of both fixed and user-defined server roles.
SELECT * FROM sys.server_principals WHERE type = 'R';
C. Return a description of a fixed server role
The following query returns the name and description of the diskadmin fixed server roles.
EXEC sp_helpsrvrole 'diskadmin';