Visual Studio Code 的 MSSQL 扩展是什么?

Visual Studio Code 的 MSSQL 扩展旨在支持开发人员构建使用 Azure SQL 的应用程序(包括 Azure SQL 数据库、Azure SQL 托管实例和 Azure VM 上的 SQL Server)、Fabric SQL 数据库(预览版)或 SQL Server 作为后端数据库。 借助一套全面的功能来连接数据库、设计和管理数据库架构、浏览数据库对象、执行查询和可视化查询计划,此扩展可转换 Visual Studio Code 中的 SQL 开发体验。

此扩展的最新增强功能旨在提高工作效率。 无论是在本地运行还是云中运行的数据库,该扩展都提供高级的 IntelliSense、高效的 Transact-SQL 脚本执行和可自定义的选项。 因此,你可以享受新式且简化的 SQL 开发工作流。

在 Visual Studio Code 中安装 MSSQL 扩展

若要开始使用 Visual Studio Code 中的 SQL 开发,请安装 MSSQL 扩展

  1. 打开 Visual Studio Code
  2. 选择活动栏中的 扩展 图标(在 macOS 上按 Cmd+Shift+X,在 Windows/Linux 上按 Ctrl+Shift+X)。
  3. 搜索栏中,键入 mssql
  4. 在结果中查找 SQL Server (mssql), 然后选择它。
  5. 选择“ 安装 ”按钮。

Visual Studio Code 中 MSSQL 扩展的屏幕截图。

提示

MSSQL 图标显示在活动栏中并且 连接 视图变为可用时,你将知道该扩展已正确安装。

新式 UI

Visual Studio Code 的 MSSQL 扩展引入了增强的 UI 的 正式发布 ,旨在跨 SQL Server、Azure SQL 和 Fabric 上的 SQL 数据库提升 SQL 开发体验。

此版本提供以下关键改进:

  • “连接”对话框
  • 对象资源管理器
  • 表设计器
  • “查询结果”窗格
  • 查询计划可视化工具

这些功能现已在默认情况下无缝集成并启用-无需设置。

连接对话框

“连接”对话框允许你通过简单直观的界面快速连接到 Azure SQL 中托管的数据库(包括 Azure SQL 数据库、Azure SQL 托管实例和 Azure VM 上的 SQL Server)、Fabric SQL 数据库(预览版)或 SQL Server。 它提供了多个输入选项来满足不同的方案:

  • 参数:输入单独的连接详细信息,例如服务器名称、数据库名称、用户名和密码。

  • 连接字符串:直接输入完整的连接字符串,以便进行更高级的配置。

  • 浏览 Azure:浏览 Azure 帐户中的可用数据库实例和数据库,并提供按订阅、资源组和位置进行筛选的选项。

除了创建新连接之外,该对话框现在还包含“保存的连接”和“最近的连接”面板,从而更轻松地重新连接到以前使用的服务器。 可以使用改进的布局有效地编辑和保存连接,以提供更好的导航和可用性。 增强的 UI 使修改连接详细信息或切换数据库比以往更流畅。

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

对象资源管理器(筛选)

对象资源管理器允许用户导航其数据库对象,例如数据库、表、视图和可编程性项。 增强的筛选功能使在复杂的大型数据库层次结构中查找特定对象更容易:

  • 应用筛选器:按名称、所有者或创建日期等属性筛选数据库对象。 可以在多个级别应用筛选器,包括数据库、表、视图和可编程性。

  • 编辑筛选器:优化或更新现有筛选器以进一步缩小对象列表的范围。

  • 清除筛选器:轻松删除应用的筛选器以查看层次结构中的所有对象。

这些筛选器提供灵活性和控制,使快速管理大型数据库和查找相关对象变得更加容易。

“对象资源管理器筛选器”功能的屏幕截图。

表设计器

表设计器提供了一个新 UI,用于为数据库创建和管理表,并提供高级功能来自定义表结构的各个方面:

  • :添加新列、设置数据类型、定义为 Null 性并指定默认值。 还可以直接在界面中将列指定为主键或标识列。

  • 主键:轻松将一个或多个列定义为表的主键,确保每一行唯一可识别。

  • 索引:创建和管理索引,通过添加其他列作为索引来提高查询性能,以便更快地检索数据。

  • 外键:通过在其他表中添加引用主键的外键来定义表之间的关系,确保各个表的数据完整性。

  • 检查约束:设置规则以对所输入的数据强制实施特定条件,例如值范围或模式。

  • 高级选项:配置更复杂的属性和行为,例如系统版本控制表和内存优化表。

在设计器中,“脚本即创建”面板提供了一个自动生成的 T-SQL 脚本,它反映表设计。 你有以下选择:

  • 发布:选择“发布”,将更改直接应用于数据库。 此操作由 DacFX(数据层应用程序框架)提供支持,可确保可靠顺利地部署架构更新。

  • 复制脚本:可以从预览面板中复制生成的 T-SQL 脚本进行手动执行,或直接在编辑器中将其打开,以便根据需要进一步调整和修改。

“表设计器”新功能的屏幕截图。

“查询结果”窗格

Visual Studio Code 的 MSSQL 扩展提供了增强的查询结果体验,可帮助你有效地可视化和了解数据输出。 查询结果显示在 Visual Studio Code 的底部面板中,该面板还托管集成终端、输出、调试控制台和其他工具,从而创建了一个统一界面以便轻松访问。

提示

现在可以在展开视图的新选项卡中打开查询结果,类似于以前的体验。

“查询结果”窗格的主要功能包括:

  • 网格视图:以熟悉的网格格式显示查询结果,以便轻松检查数据。 现在,可以选择在新选项卡中显示结果,以便获取更清晰、更有序的视图

  • 复制选项:在结果网格中右键单击以访问“全选”、“复制”、“带标头复制”和“复制标头”等选项,从而方便传输数据用于其他用途。

  • 保存查询结果:包括将查询结果保存到多种格式(如 JSON、Excel 和 CSV)的功能,使你能够处理 Visual Studio Code 之外的数据。

  • 内联排序:可以通过直接在查询结果视图中选择列标题来对数据进行排序。 可以按升序或降序进行排序,以便更轻松地分析数据的特定子集。

  • 估计计划:“估计计划”按钮位于“运行查询”按钮旁边的查询工具栏中。 它显示为流程图图标,允许生成估计的执行计划,而无需执行查询本身。 此功能提供对查询性能的宝贵见解,有助于在运行实际查询之前识别潜在的瓶颈和低效领域。

  • 启用实际计划:标有“启用实际计划”的新按钮,位于结果窗格右上角的“估计计划”按钮后面,用于查看已执行的查询的实际查询计划。 此添加操作提供了更深入的查询性能见解,并帮助识别瓶颈和低效领域。

此更新的查询结果体验旨在提供灵活性和改进的工作流集成,使开发人员能够更有效地处理数据。

“查询结果”功能的屏幕截图。

提示

可以使用设置自定义查询结果行为 mssql.openQueryResultsInTabByDefault 。 设置为 true时,查询结果默认在新的选项卡中打开,帮助整理工作区。

查询计划可视化工具

Visual Studio Code 的 MSSQL 扩展中的查询计划可视化工具允许开发人员通过显示详细的执行计划来分析 SQL 查询性能。 此工具提供有关如何执行 SQL 查询的见解,帮助开发人员识别瓶颈并优化查询。

主要特性和功能包括:

  • 节点导航:执行计划中的每个步骤都表示为一个节点,允许以各种方式与计划交互。 可以选择节点以查看工具提示或有关特定操作的详细信息。 此外,还可以折叠或展开节点树,以简化视图并专注于查询计划的关键区域。
  • 缩放控件:该可视化工具提供灵活的缩放选项,可帮助你详细分析计划。 可以放大或缩小以调整细节级别,使用“缩放以适应”功能调整视图大小,并使整个计划适合屏幕,或设置自定义缩放级别以精确检查特定元素。
  • 指标和突出显示:指标工具栏允许分析关键绩效指标并突出显示昂贵的操作。 可以选择指标,例如下拉列表中的“实际已用时间”、“成本”、“子树成本”或“读取行数”,以识别瓶颈,并使用这些指标在查询计划中搜索特定节点进行更深入的分析。

右侧边栏提供对其他操作的快速访问:

  • 保存计划:保存当前执行计划以供将来参考。
  • 打开 XML:打开查询计划的 XML 表示形式,检查代码级别的详细信息。
  • 打开查询:查看直接从工具栏生成执行计划的查询。
  • 切换工具提示:启用或禁用每个节点上的其他详细信息的工具提示。
  • 属性:查看执行计划中每个节点的属性,以及按重要性或按字母顺序排序的选项。

“查询计划可视化工具”功能的屏幕截图。

受支持的操作系统

目前,此扩展支持以下操作系统:

  • Windows (x64 | x86 |Arm64)
  • macOS (x64 |Arm64)
  • Linux Arm64
  • Ubuntu 18.04、20.04、22.04
  • Debian 10、11、12
  • CentOS 7、8 / Oracle Linux 7、8
  • Red Hat Enterprise Linux (RHEL):8、9
  • Fedora 35、36
  • OpenSUSE Leap 15

脱机安装

该扩展可以在激活期间下载并安装所需的 SqlToolsService 包。 通过选择“扩展”视图中的“从 VSIX 安装...”选项,并从“发布”页安装捆绑版本,仍然可以将扩展用于没有 Internet 访问权限的计算机。 每个操作系统都有一个 .vsix 文件,其中包含所需的服务。 选择适合你 OS 的文件,下载并安装该文件以开始使用。 建议选择完整版本并忽略任何 alpha 或 beta 版本,因为这些版本是测试中使用的日常版本。

反馈和支持

如果有任何反馈或意见,请在 https://github.com/microsoft/vscode-mssql/issues 创建 GitHub 问题。