Visual c#,使用Sql Server身份验证而不是Windows身份验证连接到SQL Server

时间:2018-03-23 09:23:54

标签: c# sql sql-server

我正在尝试使用以下连接字符串连接到数据库,这将允许我使用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身份验证。我在网上查了一下,似乎无法得到直接答案。错误是连接字符串。有什么我想念的,或者你们有什么建议怎么去做?提前谢谢!

编辑:请注意,这是一个非常小的草案项目

2 个答案:

答案 0 :(得分:1)

在您的代码中设置要使用的集成安全性 - 因此默认情况下与用户/密码无关,它试图使用您的Windows帐户。如果你将它变为false,只提供“myuser”,“mypassword”,它将使用sql身份验证。

years = sorted(set(df.index.year))
ds = pd.DataFrame(columns=pd.MultiIndex
                            .from_product([df.columns, years]))
for reg, col in df.iteritems():
    for year, group in col.groupby(by=df.index.year):
        ds.loc[:, (reg, year)] = group.reset_index(drop=True)

答案 1 :(得分:0)

如果是Windows身份验证,则不要传递凭据。从连接字符串中删除以下语句

    User ID = myID;
    Password = myPassword;";

应该是

String connStr =
        @"Data Source = mySeverName;
        Initial Catalog = PMSystem;    
        Integrated Security = true;"