c#用户登录失败''用户未与受信任的SQL Server连接(LAN)关联

本文关键字:用户 连接 Server LAN SQL 关联 失败 登录 信任 | 更新日期: 2023-09-27 18:13:45

正是标题所说的。

这是我的连接字符串:

'SQLEXPRESS;Database=GGDBase;Integrated Security=SSPI;Trusted_Connection=true;Persist Security Info=False;

程序应该在"'"前面填写服务器名。在我安装了SQL Server的计算机上运行它,这段代码工作得很好。

在通过网络连接到我的电脑上运行它,嗯,标题中的问题发生了。我已经将我的SQL服务器设置为混合(SQL和Windows身份验证),问题仍然发生。我还在服务器配置管理器中启用了TCP/IP和所有其他东西。

我知道其中一个答案是"创建一个用户"或其他东西,并提供某种类型的用户名和密码,但如果我在SQL Server管理中摆弄,这意味着任何想要安装和运行我的程序的人也必须弄乱一个非常不友好的SQL服务器。我的教授是不会允许的。

所以我谦卑地问,是否有一些方法可以通过使用c#代码来消除这个问题?

基本上,我的教授们想要的是:

  • 在所有机器上安装/复制粘贴程序。
  • 在服务器上安装SQL Server Express要做的事情很少。
  • 运行程序,它会正常工作。

谢谢大家的回答。

c#用户登录失败''用户未与受信任的SQL Server连接(LAN)关联

如果我理解正确,你想有一个应用程序,将在许多不同的计算机上运行,所有这些计算机都连接到服务器上的单个SQL Server数据库。如果所有计算机都是同一域或工作组的一部分,那么您可以使用Windows集成安全,否则您将别无选择,只能使用SQL Server身份验证。你可以在服务器上设置一个SQL Server帐户,并拥有相应的权限,然后在c#中你可以像这样创建连接字符串。

        SqlConnectionStringBuilder connString = new SqlConnectionStringBuilder();
        connString.DataSource = ServerHere;
        connString.InitialCatalog = DBHere;
        connString.IntegratedSecurity = false;
        connString.UserID = SQLUser;
        connString.Password = SQLPassword;
        return connString.ConnectionString;

祝它成功。

Data Source=xxx.xxx.xxx.xxx,1433

您的PC和端口的ip