我正在尝试为本地运行的 SQL Server 2008 实例创建一个基本的纯文本密码登录和数据库用户。我正在使用以下 SQL 代码进行登录、添加用户并授予权限,但我无法使用 SSMS 或 SQLCMD 连接到服务器(当我使用我的域凭据和集成安全时,它工作正常)。
USE <database_name>
GO
CREATE LOGIN aspLogin with password=N'pass1',
DEFAULT_DATABASE=<default_db>, CHECK_POLICY = OFF
GO
CREATE USER aspLogin FOR LOGIN aspLogin
EXEC sp_addrolemember N'db_datareader', N'aspLogin'
EXEC sp_addrolemember N'db_datawriter', N'aspLogin'
GO
USE master
GO
GRANT CONNECT SQL TO aspLogin
使用 SQLCMD:
C:\>sqlcmd -S .\SQL -P pass1 -U aspLogin
Msg 18456, Level 14, State 1, Server <machine_name>\SQL, Line 1
Login failed for user 'aspLogin'.
我错过了什么?这是使用“.\SQL”(这是实例的正确名称,而不是默认实例名称)的问题。例如,这很好用:
C:\>sqlcmd -S .\SQL -E
1>