1

我在局域网中从我的域中的其他 PC 连接到我的 SQL Server 2012 时遇到了一点问题。

我已经从该服务器正确设置了 TCP/IP 连接,并且确实创建了一个用户

csb = new SqlConnectionStringBuilder();
csb.DataSource = "PC-81";
csb.UserID = "bla";
csb.Password = "bla";
csb.IntegratedSecurity = false;
csb.InitialCatalog = "CryptoChat";

所以这是我在 C# 中构建的连接字符串,我有一个 SQLProperty 来更新我在用户界面上的控件。SQL Server 不断尝试使用域帐户登录,但我将其关闭。你能帮助我吗?我完全不知道为什么它不起作用

问候马库斯

这是设置的代码SqlConnection

if (conn == null)
{
    conn = new SqlConnection(csb.ConnectionString);
}

if (cmdUser == null)
{
   cmdUser = new SqlCommand(SQLSTRUser, conn);
}

SQLSTRUserSELECT是我的数据库的命令

这是我得到的例外:

System.Data.SqlClient.SqlException (0x80131904): Die von der Anmeldung angeforderte CryptoChat-Datanbank kann nicht geöffnet werden。Fehler bei der Anmeldung。Fehler bei der Anmeldung für den Benutzer ' DomainUser '。

根据谷歌翻译,这意味着:

System.Data.SqlClient.SqlException (0x80131904):CryptoChat 应用程序请求的数据库无法打开。登录失败。用户“域用户”登录失败。

4

1 回答 1

0

根据您在评论中的回答,我认为这可以简化为两种可能性之一。任何一个:

  1. 您的代码没有连接到您认为的服务器(即,与您更改身份验证设置的服务器不同),或者它没有使用您认为的连接设置,或者

  2. 您有一个安全策略阻止您将 SQL Server 更改为混合身份验证。

上面的第一个比大多数开发人员意识到的更有可能和更常见。为了测试这一点,让它在连接之前打印出线路上的连接字符串/信息。

于 2013-08-05T14:25:21.407 回答