SQL Server 2012 的这个连接字符串是否正确?

Is this connection string for SQL Server 2012 correct?

我有这个连接字符串,我不确定它是否正确:

<connectionStrings>
    <add name="SomeName" 
         providerName="System.Data.SqlClient" 
         connectionString="Data Source=MCA\SQLEXPRESS;Initial Catalog=SomeName; Integrated Security=true; ID=sa;Password=testtesttest;" />
</connectionStrings>

在此之前,我使用 Windows 身份验证建立连接,这个连接字符串对我有用:

<connectionStrings>
    <add name="SomeName" 
         providerName="System.Data.SqlClient" 
         connectionString="Data Source=MCA\SQLEXPRESS;Initial Catalog=SomeName; Integrated Security=true" />
</connectionStrings>

我检查了 https://www.connectionstrings.com/sql-server-2012/ 但我仍然认为我的连接字符串不正确 :)

它是正确的 - 它可能并不像您认为的那样....

问题是您同时指定了 Integrated Security=true;(使用内置 Windows 身份验证)以及 ID=sa;Password=testtesttest; (同时使用 SQL 服务器用户帐户)。

在这种情况下,集成安全 获胜 - 您的 SQL 服务器身份验证甚至没有被查看。

如果你想使用特定的用户和密码 - 从你的连接字符串中删除 Integrated Security=true;(我相信它必须是 User ID - 而不仅仅是 ID.. .) :

<connectionStrings>
    <add name="SomeName" 
         providerName="System.Data.SqlClient" 
         connectionString="Data Source=MCA\SQLEXPRESS;Initial Catalog=SomeName; User ID=sa;Password=testtesttest;" />
</connectionStrings>