我正在尝试使用以下连接字符串连接到数据库,该字符串将允许我使用 Sql Server 身份验证而不是 Windows 身份验证连接到数据库。 这是因为我的 Windows 身份验证用户名和密码与 SQL Server 身份验证不同。
String connStr =
@"Data Source = mySeverName;
Initial Catalog = PMSystem;
Integrated Security = SSPI;
User ID = myID;
Password = myPassword;";
这是代码的其余
部分 DataSet PMSytem = new DataSet();
String sqlProject = @" Select * from Project";
SqlDataAdapter daProject = new SqlDataAdapter(sqlProject, connStr);
daProject.FillSchema(PMSytem, SchemaType.Source, "Project");
daProject.Fill(PMSytem, "Project");
当我运行环境时,出现与Windows身份验证而不是Sql Server身份验证关联的用户帐户的登录失败。 我在网上查了一下,似乎无法得到直接的答案。 错误是连接字符串。 我错过了什么吗,或者你们对如何做到这一点有什么建议吗?提前感谢!
编辑:请注意,这是一个非常小的项目草案
在您的代码中,您将要使用的集成安全性设置为 - 因此默认情况下,用户名/密码无关,它尝试使用您的 Windows 帐户。 如果你把它变成false,只提供"myuser","mypassword",它将使用sql身份验证。
String connStr =
@"Data Source = mySeverName;
Initial Catalog = PMSystem;
Integrated Security = false;
User ID = myID;
Password = myPassword;";
如果是Windows身份验证,则不要传递凭据。从连接字符串中删除以下语句
User ID = myID;
Password = myPassword;";
它应该是
String connStr =
@"Data Source = mySeverName;
Initial Catalog = PMSystem;
Integrated Security = true;"