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';