sp_helplogins (Transact-SQL)
适用范围:SQL Server
提供有关每个数据库中的登录名以及与其相关的用户的信息。
语法
sp_helplogins [ [ @LoginNamePattern = ] N'LoginNamePattern' ]
[ ; ]
参数
[ @LoginNamePattern = ] N'LoginNamePattern'
@LoginNamePattern为 sysname,默认值为 NULL
.
登录名。 @LoginNamePattern为 sysname,默认值为 NULL
. 如果指定, @LoginNamePattern必须存在。 如果未 指定@LoginNamePattern ,则返回所有登录名的相关信息。
返回代码值
0
(成功)或 1
(失败)。
结果集
第一个报告包含有关指定的每个登录的信息,如下表所示。
列名称 | 数据类型 | 描述 |
---|---|---|
LoginName |
sysname | 登录名。 |
SID |
varbinary(85) | 登录安全标识符 (SID)。 |
DefDBName |
sysname | 连接到 SQL Server 实例时使用的默认数据库 LoginName 。 |
DefLangName |
sysname | 使用的默认语言 LoginName 。 |
Auser |
char(5) | Yes = LoginName 数据库中具有关联的用户名。No = LoginName 没有关联的用户名。 |
ARemote |
char(7) | Yes = LoginName 具有关联的远程登录名。No = LoginName 没有关联的登录名。 |
第二个报告包含有关映射到每个登录的用户的信息以及登录的角色成员身份,如下表所示。
列名称 | 数据类型 | 描述 |
---|---|---|
LoginName |
sysname | 登录名。 |
DBName |
sysname | 连接到 SQL Server 实例时使用的默认数据库 LoginName 。 |
UserName |
sysname | 映射到 LoginName 的用户帐户以及属于其中DBName DBName 的角色LoginName 。 |
UserOrAlias |
char(8) | 成员 = UserName 是一个角色。用户 = UserName 是用户帐户。 |
注解
在删除登录名之前,请使用 sp_helplogins
标识映射到该登录名的用户帐户。
权限
需要 securityadmin 固定服务器角色的成员身份。
若要标识映射到给定登录名的所有用户帐户, sp_helplogins
必须检查服务器中的所有数据库。 因此,对于服务器中的每个数据库,至少应满足下列条件之一:
正在执行
sp_helplogins
的用户有权访问数据库。在 数据库中启用来宾 用户帐户。
如果 sp_helplogins
无法访问数据库, sp_helplogins
将返回尽可能多的信息,并显示错误消息 15622。
示例
以下示例报告有关登录 John
的信息。
EXEC sp_helplogins 'John';
GO
结果集如下。
LoginName SID DefDBName DefLangName AUser ARemote
--------- -------------------------- --------- ----------- ----- -------
John 0x23B348613497D11190C100C master us_english yes no
LoginName DBName UserName UserOrAlias
--------- ------ -------- -----------
John pubs John User