我下载了SQL server 2012并创建了一个名为"Test"的本地数据库。然后我尝试通过VS中的c#代码访问它,如下所示:
class sqlTOdataTable
{
DataTable IndexWordsTable;
SqlDataAdapter sqlAdapter;
private string connectionString = @"Server=localhostSQLExpress;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();"时,就会出现"用户登录失败"错误。连接字符串有问题吗?
如果您试图使用登录帐户访问,请尝试添加:
Trusted_Connection=True;
如果没有,您需要指定在SSMS:中创建的用户名和密码
User Id=myUsername;Password=myPassword;
添加
Trusted_Connection=True;
所以你的连接字符串将是
private string connectionString = @"Server=localhostSQLExpress;Database=Test;Trusted_Connection=True;";
请访问www.connectionstrings.com
这假设您已安装SqlServer Express以将Windows模式用作身份验证模式。通过这种方式,SqlExpress接受您的windows用户凭据。
尝试这种方式
string connectionString = @"Data Source=.SQLExpress;Initial Catalog=test;Integrated Security=True";
如果在服务器实例中允许混合模式身份验证,则必须在连接字符串中提供SQL Server登录名/密码。如果只允许Windows Mode
,则必须使用Windows凭据登录。