• 相关软件
    >SUSER_SNAME 创建者:webmaster 更新时间:2006-02-16 15:51

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



    语法


    SUSER_SNAME ( [ server_user_sid ] )



    参数


    server_user_sid



    是用户的安全标识号。server_user_sid(可选)的数据类型为 varbinary(85),可以是任何 Microsoft® SQL Server™ 登录或 Microsoft Windows NT® 用户或组的安全标识号。如果未指定 server_user_sid,则返回有关当前用户的信息。



    返回类型


    nvarchar(256)



    注释


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



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



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



    示例


    A. 使用 SUSER_SNAME


    下例返回值为 0x01 的安全标识号的登录名。



    SELECT SUSER_SNAME(0x01)


    B. 对 Windows NT 用户的安全标识号使用 SUSER_SNAME


    下例返回(通过使用 SUSER_SID 获得的)Windows NT 用户安全标识号的登录名。



    SELECT SUSER_SNAME(0x010500000000000515000000a065cf7e784b9b5fe77c87705a2e0000)


    C. 将 SUSER_SNAME 用作 DEFAULT 约束


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



    USE pubs
    GO
    CREATE TABLE sname_example
    (
    login_sname sysname DEFAULT SUSER_SNAME(),
    employee_id uniqueidentifier DEFAULT NEWID(),
    login_date datetime DEFAULT GETDATE()
    )
    GO
    INSERT sname_example DEFAULT VALUES
    GO
    相关文章
    本页查看次数: