无法打开登录请求的数据库“C:\ PROGRAM FILES \ X \ Y \ Z.MDF”。登录失败。用户“DESKTOP-xxxxx”

时间:2017-07-25 07:34:31

标签: c# sql sql-server database

我创建了一个Windows窗体应用程序。我已经包含了一个名为Z.mdf的本地数据库。在app.config中,连接字符串如下所示:

<connectionStrings>
    <add name="ZConnectionString"
        connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\Z.mdf;Integrated Security=false;Connect Timeout=30"
        providerName="System.Data.SqlClient" />
</connectionStrings>

当我从visual studio运行应用程序时,它工作正常。但是当我使用高级安装程序部署应用程序时,它会出现以下错误:

  

无法打开登录请求的数据库“C:\ PROGRAM FILES \ X \ Y \ Z.MDF”。登录失败。用户'DESKTOP-xxxxx''

登录失败

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

您的连接字符串指定Integrated Security=false;,因此登录时未使用您的Windows用户帐户。

您需要使用Integrated Security=true,或者需要在连接字符串上指定用户ID和密码:

<connectionStrings>
<add name="ZConnectionString"
    connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\Z.mdf;
    Integrated Security=false; user id=xyz; password=abc;Connect Timeout=30"
    providerName="System.Data.SqlClient" />
</connectionStrings>