sp_helprolemember (Transact-SQL)
適用対象: SQL Server
現在のデータベースに含まれるロールの直接的なメンバーに関する情報を返します。
構文
sp_helprolemember [ [ @rolename = ] N'rolename' ]
[ ; ]
引数
[ @rolename = ] N'rolename'
現在のデータベース内のロールの名前。 @rolename は sysname で、既定値は NULL
です。 @rolename は、現在のデータベースに存在する必要があります。 @rolename指定されていない場合は、現在のデータベースから少なくとも 1 つのメンバーを含むすべてのロールが返されます。
リターン コードの値
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を使用して、指定したユーザーのロール メンバーシップを確認します。
アクセス許可
ロール public のメンバーシップが必要です。
例
次の例では、AdventureWorks2022
データベースのSales
ロールのメンバーを表示します。
EXEC sp_helprolemember 'Sales';