创建新的 SQL Server 登录,该登录允许用户使用 SQL Server 身份验证连接到 SQL Server 实例。
重要提示 |
---|
后续版本的 Microsoft SQL Server 将删除该功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。请改用 CREATE LOGIN。 |
安全说明 |
---|
请尽可能使用 Windows 身份验证。 |
SQL Server 登录名可以包含 1 到 128 个字符,其中包括字母、符号和数字。登录名不能包含反斜杠 (/);它可以是保留登录名,例如 sa 或 public,或已经存在;或者是 NULL 或空字符串 ('')。
如果提供默认数据库的名称,则不用执行 USE 语句就可以连接到指定的数据库。但是,除非数据库所有者授予您(使用 sp_adduser 或 sp_addrolemember 或 sp_addrole)该数据库的访问权,否则不能使用默认的数据库。
SID 号是一个 GUID,用于唯一地标识服务器中的登录名。
更改服务器的默认语言将不会更改现有登录的默认语言。若要更改服务器的默认语言,请使用 sp_configure。
如果在将登录名添加到 SQL Server 时已对密码进行了哈希运算,则使用 skip_encryption 来取消密码哈希运算将是有用的。如果 SQL Server 的早期版本对密码进行了哈希运算,则使用skip_encryption_old。
不能在用户定义事务内执行 sp_addlogin。
下表显示了数个与 sp_addlogin 一起使用的存储过程。
存储过程 | 说明 |
---|---|
添加 Windows 用户或组。 | |
更改用户密码。 | |
更改用户的默认数据库。 | |
更改用户的默认语言。 |
A. 创建 SQL Server 登录
以下示例为用户 Victoria 创建 SQL Server 登录,密码为 B1r12-36,并且不指定默认数据库。
EXEC sp_addlogin 'Victoria', 'B1r12-36'; GO
B. 创建具有默认数据库的 SQL Server 登录
以下示例为用户 Albert 创建 SQL Server 登录,密码为 B5432-3M6,默认数据库为 corporate。
EXEC sp_addlogin 'Albert', 'B5432-3M6', 'corporate'; GO
C. 创建具有不同默认语言的 SQL Server 登录
以下示例为用户 TzTodorov 创建 SQL Server 登录,密码为 709hLKH7chjfwv,默认数据库为 AdventureWorks,默认语言为 Bulgarian。
EXEC sp_addlogin 'TzTodorov', '709hLKH7chjfwv', 'AdventureWorks', N'български'
D. 创建具有特定 SID 的 SQL Server 登录
以下示例为用户 Michael 创建 SQL Server 登录,密码为 B548bmM%f6,默认数据库为 AdventureWorks,默认语言为 us_english,SID 为 0x0123456789ABCDEF0123456789ABCDEF。
EXEC sp_addlogin 'Michael', 'B548bmM%f6', 'AdventureWorks', 'us_english', 0x0123456789ABCDEF0123456789ABCDEF