Transact-SQL 参考

SUSER_SID

返回用户登录名的安全标识号 (SID)。

语法

SUSER_SID ( [ 'login' ] )

参数

'login'

是用户的登录名。login(可选)的数据类型为 sysname,可以是 Microsoft® SQL Server™ 登录或 Microsoft Windows NT® 用户或组。如果未指定 login,则返回有关当前用户的信息。

返回类型

varbinary(85)

注释

当使用 SQL Server 身份验证指定 SQL Server 登录时,必须授予用户连接到 SQL Server 的权限。使用 sp_addlogin 或 SQL Server 企业管理器授予该权限。但是,当使用 Windows 身份验证指定 Windows NT 用户或组时,不必授予该用户或组连接到 SQL Server 的权限。

SUSER_SID 在 ALTER TABLE 或 CREATE TABLE 中可用作 DEFAULT 约束。

系统函数可以在选择列表、WHERE 子句和任何允许使用表达式的地方使用,并且后面必须始终有圆括号(即使未指定任何参数)。

示例
A. 使用 SUSER_SID

下例返回 SQL Server sa 登录的安全标识号。

SELECT SUSER_SID('sa')
B. 对 Windows NT 用户名使用 SUSER_SID

下例返回 Windows NT 用户 London\Workstation1 的安全标识号。

SELECT SUSER_SID('London\Workstation1')
C. 将 SUSER_SID 用作 DEFAULT 约束

下例在 CREATE TABLE 语句中将 SUSER_SID 用作 DEFAULT 约束。

USE pubs
GO
CREATE TABLE sid_example
(
login_sid   varbinary(85) DEFAULT SUSER_SID(),
login_name  varchar(30) DEFAULT SYSTEM_USER,
login_dept  varchar(10) DEFAULT 'SALES',
login_date  datetime DEFAULT GETDATE()
) 
GO
INSERT sid_example DEFAULT VALUES
GO

请参见

ALTER TABLE

binary 和 varbinary

CREATE TABLE

安全管理

sp_addlogin

sp_grantlogin

系统函数