2013-02-16 317 views
0

我下载了SQL Server 2012并创建了一个名为'Test'的本地数据库。 然后我试图通过我的C#代码来访问它在VS这样的:用户登录失败

class sqlTOdataTable 
{ 
    DataTable IndexWordsTable; 
    SqlDataAdapter sqlAdapter; 
    private string connectionString = @"Server=localhost\SQLExpress;Database=Test"; 

    public sqlTOdataTable(string TableName) 
    { 
     using (SqlConnection connection = new SqlConnection(connectionString)) 
     { 
      connection.Open(); 
      Console.WriteLine("Enter command"); 
      SqlCommand cmd = new SqlCommand(Console.ReadLine(),connection); 
      SqlDataReader Reader = cmd.ExecuteReader(); 

     } 
    } 

} 

一旦进入“connection.Open();”出现“登录失败的用户”错误。 连接字符串有问题吗?

回答

1

如果您想与访问您的登录帐户,尝试添加:

Trusted_Connection=True; 

如果没有,你需要指定你的用户名和密码在SSMS创建:

User Id=myUsername;Password=myPassword; 
0

添加

Trusted_Connection=True; 

,所以你的ConnectionString会

private string connectionString = @"Server=localhost\SQLExpress;Database=Test;Trusted_Connection=True;"; 

www.connectionstrings.com

这假定您已经安装的SqlServer Express作为Authentication Mode在Windows模式下使用。这样你的SqlExpress接受你的Windows用户凭证。

0

如果您的服务器实例允许使用混合模式身份验证,则必须在连接字符串中提供SQL Server登录名/密码。如果只允许Windows Mode,则必须使用Windows凭据登录。

1

尝试这种方式

string connectionString = @"Data Source=.\SQLExpress;Initial Catalog=test;Integrated Security=True";