【问题标题】:Can't establish SQL Server connection from VS 2008无法从 VS 2008 建立 SQL Server 连接
【发布时间】:2009-09-17 20:31:48
【问题描述】:

如果这听起来像一个愚蠢的问题,我很抱歉,但我已经用谷歌搜索了一段时间的解决方案,但没有成功。我正在尝试建立从 VS 2008 到 SQL Server 的连接。我正在尝试使用我的 Web 应用程序已成功使用的用户从其连接字符串中访问数据库。但是当从 VS 2008 开始时,它告诉我“使用 'xxxxxx' 登录失败”。我目前在“添加连接”窗口中。我选择了数据源和服务器名称,为 SQL Server 身份验证填写了用户名和密码。我是否必须为此用户设置特定权限?我需要在 SQL Server 中允许 VS 2008 用户吗?谢谢。

【问题讨论】:

  • 数据库是否与 Web 应用程序位于同一台服务器上?如果是这样,也许您不允许远程连接。
  • 如果 SQL Server 和 VS 2008 在不同的工作站上,你必须允许远程连接。你已经这样做了吗?
  • 如果您的数据库在另一台机器上,请检查这些: 1. 您必须允许在运行 SQL Server 的机器上进行远程连接。 2.有时你的机器或sql server机器中的防火墙可能会导致这个问题。尝试连接到本地计算机上的 sql server,如果可以,则问题出在您的连接上,例如这些 2.
  • SQL Server和VS在同一台机器上?
  • 是的,他们在同一台机器上

标签: sql sql-server database visual-studio-2008 connection


【解决方案1】:

我已经找到了解决这个问题的方法。我的 Visual Studio 会自动提取 MACHINENAME\SQLEXPRESS 之类的内容。由于它是自动拉的,我没有费心仔细看它。我终于意识到在我的其他应用程序中对我有用的连接字符串是 .\SQLESXPRESS。当我在 Visual Studio 中输入它时,它确实有效。谢谢大家的帮助。

【讨论】:

    【解决方案2】:

    您是否安装了 SQL Server Management Studio Express?如果是这样,请尝试通过该界面以同一用户身份连接。这将稍微隔离您的问题。

    【讨论】:

    • 是的,我有。我可以使用此特定用户在 SQL Server Management Studio Express 中进行连接,但无法展开数据库树节点。
    • 哼,抱歉,现在可以了。我已经更改了一些设置,试图授予该用户更多的权限。我可以登录 SQL Server Management Studio Express,但仍然无法从 VS 登录
    【解决方案3】:

    使用 Visual Studio,您可以通过“远程”连接进行连接,即使它们位于同一台计算机上。使用 Server Management Studio,您可能通过命名管道进行连接。您需要更改 SQL 配置以允许远程连接。 Here 是如何操作的说明。

    【讨论】:

    • 感谢您的帮助。我已经发布了我在上面找到的解决方案。
    【解决方案4】:

    您可以通过使用 LINQPad 连接来测试您的 SQL 连接,经常发现这可以解决与我工作场所的新 SQL Server 实例的连接问题。 http://www.linqpad.net/

    【讨论】:

      【解决方案5】:

      您是否尝试在连接字符串中指定要连接的用户名和密码 - ALA:

      Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
      

      这实际上使用 SQL 身份验证,而不是集成 (Windows) 身份验证。您可能正在寻找的是:

      Data Source=myServerAddress;Initial Catalog=myDataBase;Trusted_Connection=True;
      

      这将作为运行 Visual Studio 的用户登录到数据库。请注意,此处未指定用户名/密码 - 它使用当前的 Windows 身份 - 在您的情况下,即运行 Visual Studio 的用户。

      【讨论】:

      • 刚刚在我的帖子下方添加了一条评论:“嗨,我找到了问题所在。正是这个。我的 Visual Studio 会自动拉取 MACHINENAME\SQLEXPRESS 之类的东西。因为它是自动拉取的,我没有仔细看它。我终于意识到在我的其他应用程序中对我有用的连接字符串是 .\SQLESXPRESS。当我在 Visual Studio 中输入它时,它确实有效。无论如何感谢您的帮助。"
      猜你喜欢
      • 1970-01-01
      • 2017-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-20
      • 1970-01-01
      • 2019-08-09
      • 1970-01-01
      相关资源
      最近更新 更多