2011-01-28 103 views
0

我运行下面的脚本来用户登录失败。该用户未与可信的SQL Server连接 - SQL Server 2005中

  1. 创建数据库
  2. 创建登录
  3. 分配登录到数据库
  4. 指定数据库角色
  5. 创建数据库中的表

的脚本 -

if not exists (
select * 
from master.dbo.sysdatabases 
where name = 'TESTDB') 
create database TESTDB 
GO 

if not exists(select * from master.dbo.syslogins where name = 'testuser') 
EXEC [TESTDB].dbo.sp_addlogin @loginame = N'testuser', @passwd = '[email protected]', @defdb = N'TESTDB', @deflanguage = N'us_english' 
GO 

USE [TESTDB] 
GO 
/****** Object: User [MPS] Script Date: 01/22/2011 17:53:17 ******/ 
GO    
if exists(select * from master.dbo.syslogins where name = 'testuser' AND dbname = 'TESTDB') 
EXEC dbo.sp_grantdbaccess @loginame = N'testuser' 
GO 

USE [TESTDB] 

EXEC sp_addrolemember 'db_owner', 'testuser' 
EXEC sp_addrolemember 'db_accessadmin', 'testuser' 
EXEC sp_addrolemember 'db_securityadmin', 'testuser' 

USE [TESTDB] 

GO 
/****** Object: Table [dbo].[tblJobs] Script Date: 01/22/2011 17:04:05 ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
IF OBJECT_ID('tblJobs','U') is null 
BEGIN 
CREATE TABLE [dbo].[tblJobs](
    [ID] [int] IDENTITY(1,1) NOT NULL, 
    [JobTitle] [nvarchar](4000) NOT NULL 
) ON [PRIMARY] 
END 

一切都没有任何问题创建。但是,当我尝试使用testuser登录时,出现错误 -

登录用户'testuser'失败。用户没有与受信任的SQL服务器连接相关联。

任何想法为什么?

+0

当你得到错误时,你用什么来登录? SSMS?或者一个连接字符串的应用程序? – Jaymz 2011-01-28 13:50:52

回答

3

可能是因为您的服务器未配置为使用混合模式身份验证。

转到服务器属性并选择SQL Server和Windows身份验证模式。

enter image description here

相关问题