sp_helprolemember (Transact-SQL)
适用范围:SQL Server
返回有关当前数据库中某个角色的直接成员的信息。
语法
sp_helprolemember [ [ @rolename = ] N'rolename' ]
[ ; ]
参数
[ @rolename = ] N'rolename'
当前数据库中的角色的名称。 @rolename为 sysname,默认值为 NULL
. 当前数据库中必须存在@rolename 。 如果未 指定@rolename ,则返回包含当前数据库中至少一个成员的所有角色。
返回代码值
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 检查指定用户的角色成员身份。
权限
要求 公共 角色具有成员身份。
示例
以下示例显示数据库中角色AdventureWorks2022
的成员Sales
。
EXEC sp_helprolemember 'Sales';