sp_helprolemember (Transact-SQL)

返回有关当前数据库中某个角色的直接成员的信息。

适用范围:SQL Server(SQL Server 2008 到当前版本)。

主题链接图标 Transact-SQL 语法约定

语法

sp_helprolemember [ [ @rolename = ] 'role' ]

参数

  • [ @rolename = ] ' role '
    当前数据库中的角色的名称。 role 的数据类型为 sysname,默认值为 NULL。 role 必须存在于当前数据库中。 如果不指定 role,则返回当前数据库中至少包含一个成员的所有角色。

返回代码值

0(成功)或 1(失败)

结果集

列名

数据类型

说明

DbRole

sysname

当前数据库中角色的名称。

MemberName

sysname

DbRole 成员的名称。

MemberSID

varbinary(85)

MemberName 的安全标识符。

注释

如果数据库包含嵌套角色,则 MemberName 可能是角色名称。 sp_helprolemember 不显示通过嵌套角色获取的成员身份。 例如,如果 User1 是 Role1 的成员,而 Role1 是 Role2 的成员,则 EXEC sp_helprolemember 'Role2' 将返回 Role1,而不是 Role1 的成员(在这个示例中为 User1)。 若要返回嵌套的成员身份,您必须对每个嵌套角色都重复执行 sp_helprolemember。

使用 sp_helpsrvrolemember 可以显示固定服务器角色的成员。

使用 IS_ROLEMEMBER (Transact-SQL) 可检查指定用户的角色成员身份。

权限

要求具有 public 角色成员身份。

示例

以下示例显示 Sales 角色的成员。

EXEC sp_helprolemember 'Sales';

请参阅

参考

安全存储过程 (Transact-SQL)

sp_addrolemember (Transact-SQL)

sp_droprolemember (Transact-SQL)

sp_helprole (Transact-SQL)

sp_helpsrvrolemember (Transact-SQL)

系统存储过程 (Transact-SQL)