Transact-SQL 参考

IS_MEMBER

表明当前用户是否是指定 Microsoft® Windows NT® 组或 Microsoft SQL Server™ 角色的成员。

语法

IS_MEMBER ( { 'group' | 'role' } )

参数

'group'

被检查的 Windows NT 组的名称;必须用 Domain\Group 这种格式。group 的数据类型为 sysname

'role'

被检查的 SQL Server 角色的名称。role 的数据类型为 sysname,它可以包括数据库固定角色或用户定义的角色,但不包括服务器角色。

返回类型

int

注释

IS_MEMBER 返回下面三个值。

返回值 描述
0 当前用户不是 grouprole 的成员。
1 当前用户是 grouprole 的成员。
NULL grouprole 是无效的。

如果要通过程序检测当前用户是否可以执行某个活动(该活动依赖于应用到组或角色的权限),那么这个函数很有用。

示例

下面的示例指明当前用户是否为 db_owner 固定数据库角色的成员。

IF IS_MEMBER ('db_owner') = 1
   print 'Current user is a member of the db_owner role'
ELSE IF IS_MEMBER ('db_owner') = 0
   print 'Current user is NOT a member of the db_owner role'
ELSE IF IS_MEMBER ('db_owner') IS NULL
   print 'ERROR: Invalid group / role specified'

请参见

IS_SRVROLEMEMBER

安全函数