尝试为SQL 2012创建新的登录用户时出错

时间:2014-07-09 17:26:57

标签: sql-server

我正在尝试按照此link here中描述的程序进行操作,但是如果我输入的话  IIS APPPOOL \ AppPoolName作为登录名(如步骤3),它会抛出一个错误,说它不是有效名称,因为它包含无效字符。我正在使用SSMS for SQL 2012.

更新:只是澄清:“无效字符”错误是b / c当我必须“Windows身份验证”时,我试图在“SQL Server身份验证”上输入用户。

3 个答案:

答案 0 :(得分:2)

这是我的一个博客中的一些示例TSQL代码,用于创建登录和用户。 http://craftydba.com/?p=656

它不喜欢。放在括号内。 []

-- Delete existing login.
IF  EXISTS (SELECT * FROM sys.server_principals WHERE name = N'BSA_USER')
DROP LOGIN [BSA_USER]
GO

-- Add new login.
CREATE LOGIN [BSA_USER] WITH PASSWORD=N'M0a2r0c9h11#', DEFAULT_DATABASE=[BSA]
GO

-- Delete existing user.
IF  EXISTS (SELECT * FROM sys.database_principals WHERE name = N'BSA_USER')
DROP USER [BSA_USER]
GO

-- Add new user.
CREATE USER [BSA_USER] FOR LOGIN [BSA_USER] WITH DEFAULT_SCHEMA=[dbo]
GO

更改Windows帐户的语法。

-- Using users naming ...
CREATE LOGIN [APPPOOL\MyAppPool]
FROM WINDOWS
WITH DEFAULT_DATABASE = [MyDatabase]
GO

答案 1 :(得分:2)

本回答了他自己的问题:

  

更新:只是澄清:"无效字符"错误是b / c我是   尝试进入用户" SQL Server身份验证"什么时候必须   be" Windows身份验证"。

答案 2 :(得分:0)

在SSMS中创建Windows域用户时遇到同样的问题。

这解决了它:

https://social.msdn.microsoft.com/Forums/en-US/8f084029-b0cf-4e7d-bb07-a11e31363660/tsd03072-xxxxxxx-is-not-a-valid-name-because-it-contains-invalid-characters?forum=vstsdb

简介: 错误消息具有误导性,错误情况是对于具有Windows登录名和(userName!= loginName)的情况。该代码目前尚未考虑大小写,因此必须完全匹配。