远程计算机上SQL Server Express的连接字符串登录失败错误

本文关键字:字符串 连接 登录 失败 错误 Express 计算机 SQL Server | 更新日期: 2023-09-27 18:11:09

我最近在这个地址问了这个问题:

远程SQL Server连接字符串

这个线程帮助我们到达这个连接字符串:

SqlConnection connection= new SqlConnection("Server=2.221.1.145;Database=Database;User Id=Andy-PC''Andy;Password=mypass");

抛出错误:

Login failed for user 'Andy-PC'Andy'

这个用户拥有数据库,我猜应该有权访问它....然而,我记得当我在本地尝试这种身份验证方式时,它不起作用——这就是为什么我最初开始使用Integrated Security=true。是否有一些具体的我需要做的,以添加此用户到SQL服务器,或数据库?

远程计算机上SQL Server Express的连接字符串登录失败错误

我看到一些问题:

  1. 2.221.1.145为陌生IP地址。那不是内部网地址,是互联网地址。但这不是你的主要问题

  2. 您的连接字符串正在使用SQL logins,而不是windows(受信任)登录。所以你的用户名前面不应该有域名

假设您想使用SQL登录(这些可以更容易地排除故障)

  1. 添加SQL User(不是windows用户)到您的服务器登录Andy和密码mypass

  2. 使用Server=2.221.1.145;Database=Database;User Id=Andy;Password=mypass

终于算出来了

将安全性转变为Windows和SQL双重认证。然后如下:我如何在添加到我的项目的SQL Server Express数据库中创建用户?然后对所有存储过程执行GRANT EXECUTE,使我们得到了我们所需要的!

当应用程序运行的机器无法访问Andy- pc 'Andy时,通常会发生此错误。

当我们需要使用windows身份验证时,我们应该使用特定于域的帐户而不是特定于机器的帐户。