在 SSDT 中连接到现有数据库

本文介绍如何用户连接到 SQL Server Data Tools (SSDT)中的现有数据库。 SSDT 允许连接到现有数据库,使用 Transact-SQL 运行查询(T-SQL),并查看结果。

SSDT 还提供大量可用于处理数据库的功能。 以下各节详细介绍了这些内容。 让我们了解如何连接到现有数据库。

若要连接到现有数据库,请参阅以下步骤:

使用 SQL Server 对象资源管理器连接到数据库

SQL Server 对象资源管理器(SSOX) 是 SSDT for Visual Studio 中可用的工具。 它允许在 Visual Studio 中连接到和管理 SQL Server 数据库。 若要在 SSDT 中使用 SQL Server 对象资源管理器连接到数据库,请执行以下步骤:

  1. 打开 Visual Studio:确保已安装 SSDT 以及相应的 Visual Studio 版本。 启动 Visual Studio。

  2. 打开 SQL Server 对象资源管理器:转到 “视图 ”菜单,然后选择 “SQL Server 对象资源管理器”。 或者,可以使用快捷 键 Ctrl + \ (反斜杠),然后键入 Ctrl + S

  3. 连接到数据库服务器:在“SQL Server 对象资源管理器”窗口中,选择 “添加 SQL Server ”按钮(看起来是带有 + 图标的工作表)或右键单击 SQL Server 节点,然后选择 “添加 SQL Server”。

  4. 输入服务器连接详细信息:在 “连接 ”对话框中,输入要连接到的 SQL Server 实例的连接详细信息。 这包括服务器名称、身份验证方法(例如 Windows 身份验证或 SQL Server 身份验证)、登录凭据(如果适用)和加密详细信息。 连接 SQL Server 实例后,它将自动显示在 “历史记录 ”选项卡中的“最近连接选项”下。

  5. 测试连接:输入连接详细信息后,可以选择 “连接” 按钮来测试连接。 如果连接成功,应会看到 SQL Server 对象资源管理器中列出的实例及其数据库。

  6. 导航和管理数据库:连接后,可以展开服务器节点以查看该实例上托管的所有数据库。 可以进一步展开每个数据库节点以浏览其表、视图、存储过程和其他数据库对象。

  7. 执行作:右键单击数据库或任何对象以执行各种作,例如查询数据、创建新对象、编辑现有对象等。

“连接”对话框的屏幕截图。

身份验证类型

SSDT 允许连接到本地计算机、网络和 Azure 上的数据库。 考虑到各种方案,我们有多个身份验证类型。 如下所示:

不同身份验证类型的屏幕截图。

  • Windows 身份验证:此身份验证方法使用 Windows 安全性对用户进行身份验证到 SQL Server。

  • SQL Server 身份验证:此身份验证方法要求用户具有 SQL Server 登录名和密码。

  • Active Directory 密码身份验证:此身份验证方法使用用户的 Active Directory 密码向 SQL Server 进行身份验证。 这是配置的最简单身份验证方法,但它不提供任何其他安全功能。

  • Active Directory 集成身份验证:此身份验证方法使用 Kerberos 对用户进行身份验证到 SQL Server。 Kerberos 是比 Active Directory 密码身份验证更安全的身份验证协议,但它要求客户端和服务器都加入 Active Directory 域。

  • Active Directory 交互式身份验证:此身份验证方法允许用户通过在对话框中输入其 Active Directory 凭据向 SQL Server 进行身份验证。 这是最安全的身份验证方法,但对于每次连接到 SQL Server 时必须输入其凭据的用户来说,这并不方便。

概要

身份验证方法 Description
Windows 身份验证 使用 Windows 安全系统对用户进行身份验证。
SQL Server 身份验证 允许用户创建单独的 SQL Server 登录名和密码。
Active Directory 密码身份验证 使用用户的 Active Directory 密码向 SQL Server 进行身份验证。
Active Directory 集成身份验证 使用 Kerberos 向 SQL Server 验证用户身份。
Active Directory 交互式身份验证 允许用户通过在对话框中输入其 Active Directory 凭据向 SQL Server 进行身份验证。

加密和信任服务器证书

对于 Visual Studio 17.8 及更高版本中的 SSDT,Encrypt 属性有一个重要的更改,现在默认为所有连接启用。 SQL Server 必须使用由受信任的根证书颁发机构签名的 TLS 证书进行配置。 此外,如果初始连接尝试失败并启用加密(默认值),SSDT 会提供一个通知提示,其中包含尝试启用 Trust Server Certificate 连接的选项。 属性EncryptTrust Server Certificate也可用于手动编辑。 最佳做法是支持与服务器的受信任加密连接。

不同加密类型的屏幕截图。

对于连接到 Azure SQL 数据库的用户,无需更改现有已保存的连接;Azure SQL 数据库支持加密连接,并配置了受信任的证书。

对于连接到本地 SQL Server 实例或虚拟机上运行的 SQL Server 的用户,如果 Encrypt 设置为 True,请确保具有来自受信任证书颁发机构的证书(例如,不是自签名证书)。 或者,可以选择不加密连接(将Encrypt设置为False),或信任服务器证书(将Encrypt设置为True并将Trust Server Certificate设置为True)。

如果 SQL Server 未使用受信任的证书进行配置,并且您尝试使用Strict加密进行连接,或者Encrypt设置为True并且Trust Server Certificate设置为False,则会显示以下错误消息:

错误消息的屏幕截图。

在此连接上启用了加密,查看目标 SQL Server 的 SSL 和证书配置,或在连接对话框中启用“信任服务器证书”。

其他信息

已成功与服务器建立连接,但在登录过程中发生错误。 (提供程序:SSL 提供程序,错误:0 - 证书链是由不受信任的颁发机构颁发的。(Microsoft SQL Server)

后续步骤