IntelliJ IDEA 2025.1 Help

运行查询

启用 数据库工具与 SQL 插件

此功能依赖于 数据库工具与 SQL 插件,该插件默认情况下在 IntelliJ IDEA 中绑定并启用。 如果相关功能不可用,请确保您没有禁用插件。

  1. Ctrl+Alt+S 打开设置,然后选择 插件

  2. 打开 已安装 选项卡,找到 数据库工具与 SQL 插件,然后选中插件名称旁边的复选框。

您可以通过使用快捷键、工具栏按钮和图标、上下文菜单以及 run/debug configurations 来运行您的代码。 您可以从 查询控制台临时文件用户文件 运行查询。

有关在哪里以及如何查看查询结果的更多信息,请参阅 查询结果

运行语句和过程

在查询控制台中运行语句

您可以将 查询控制台 视为一个终端,您可以在其中输入并运行代码。

  1. 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,点击数据源。

  2. 请按 F4 打开查询控制台。 有关使用控制台的更多信息,请参阅 使用控制台

  3. 请输入您想要执行的语句。

  4. 请点击 执行按钮执行(X) 工具栏。 或者按 Ctrl+Enter

    如果您有多个语句,请选择是要执行所有语句还是单个语句。 建议列表总是包含运行所有语句的选项。

    运行查询

从打开的文件运行语句

在 IntelliJ IDEA 中,您可以打开并运行文件。 文件大小限制为 20 MB。 当您打开一个大于 20 MB 的文件时,您只能看到文件的前 2.5 MB。 该文件应与 SQL 文件类型相关联。 有关文件类型关联的更多信息,请参阅 文件类型关联主题。

  1. 打开 项目 工具窗口(视图(V) | 工具窗口 | 项目 ),然后双击一个 SQL 文件。

    有关在 IntelliJ IDEA 中附加目录和文件的更多信息,请参阅 用户文件

  2. 点击您要执行的语句。

    此外,您可以选择(高亮显示)要执行的代码片段。 它可以是一个子查询或一组语句。 IntelliJ IDEA 仅执行所选内容。

  3. 点击工具栏上的 执行(X) 按钮 (执行按钮)。 或者按 Ctrl+Enter

    若要自定义查询执行设置,请点击 自定义 链接。 或者,按下 Ctrl+Alt+S 打开设置,然后导航至 工具 | 数据库 | 查询执行。 .

  4. (可选)如果 SQL 文件未连接到数据源,请在 <data source> 列表中选择您想连接的数据源。

    有关将 SQL 文件附加到数据源的更多信息,请参阅 数据源附件

  5. 语句 窗口中,按下 Enter 以运行选定的语句。 您可以切换到其他条目以运行另一组语句。 待执行的语句在查询编辑器中高亮显示。

    如需运行脚本文件的另一个示例,请参阅 youtube.com 上的以下视频

运行存储过程

存储过程是一组具有指定名称的 SQL 语句。 您可以在 PostgreSQL、Microsoft SQL 服务器、Oracle 和 MySQL 中执行存储过程。

  1. 右键点击要执行的存储函数,然后选择 运行功能

  2. 执行例程 窗口中,输入所有必要的参数值,然后点击 确定

    如有必要,请选中 运行自 复选框并选择文件或控制台以运行存储的函数。

    运行存储过程

运行 SELECT 语句并将结果保存到文件中

  1. (可选)如果文件没有连接到数据源,请从工具栏上的数据源列表中选择一个数据源。 然后从 会话 列表中选择连接会话。

    如需了解有关连接会话的更多信息,请参阅 会话

  2. 右键点击 SELECT 语句。

  3. 请选择 执行到文件 并选择输出格式。

  4. 导出数据 对话框中,指定您要使用的 extractor 和其他设置。

    有关 导出数据 对话框的更多信息,请参阅 导出数据 主题。

将 SELECT 语句的结果保存到文件中

取消运行语句

  • 要取消正在执行的语句,请点击工具栏上的 取消运行语句图标取消正在运行的语句

    请求被取消时,装订区域上的进度指示器显示红色方块。

如果您点击 取消运行语句图标取消正在运行的语句 按钮两次,IntelliJ IDEA会显示一个警告,您可以终止远程进程或稍等片刻。 显示此警告是为了确保安全,因为停用可能会对某些同时发生的进程造成潜在危险。

此外,IDE 会在空闲取消 10 秒后显示警告。

取消连接

您不仅可以中断请求的执行,还可以中断连接的创建。 这与控制台中的第一个查询特别相关,它也创建了一个连接。

您可以停止创建连接的过程。 要做到这一点,请在创建连接时点击工具栏上的 取消正在运行的语句 按钮(取消运行语句图标)。 连接将会停止,并且您将看到 连接已取消 消息。

解决模式

为了运行 SQL 脚本,将数据库对象的用法视为链接,并为您提供正确的代码补全,IntelliJ IDEA 必须将代码中的数据库对象解析到某个特定的上下文。 默认情况下,IDE 使用以下之一作为解析数据库对象的起点: <schema> 选择器,或默认数据库(如果未设置上述任何一项)。

根据您的代码是单个脚本还是包含多个不相关的 SQL 语句,请选择以下一种解析模式,以正确解析数据库对象:

  • Playground :查询控制台的默认模式。 所有数据库对象都解析到相同的上下文。

    如果您的代码是一组不打算作为单个脚本运行的独立 SQL 语句,请使用此模式。

  • 脚本 :本地 SQL 文件的默认模式。 USE SQL 语句(适用于 PostgreSQL 的 SET search_path TO )会覆盖默认上下文以解析数据库对象。

    如果您的代码旨在作为单个脚本运行,请使用此模式。

在以下视频中, public 模式被选择为查询控制台的默认模式。 模式包含 actor 表,而 information_schema 模式不包含它。 当解析模式为 Playground 时,数据库对象在 SELECT 语句中解析为默认架构,因为所有语句都被视为无关。

一旦解析模式更改为 脚本 时,第二个 SELECT 语句被视为与 SET search_path TO information_schema 相关。 该 actor 表在该语句中不再解析。

用户参数

根据数据库供应商,问号 ? 在 SQL 语句中被视为参数。 您可以在 工具 | 数据库 | 查询执行 | 用户参数 设置页面&#xa0; Ctrl+Alt+S 中指定哪些其他字符及其序列应被视为参数,以及在哪些位置。

SQL 参数的模式通过使用正则表达式指定。

运行参数化语句

如果您的语句中有参数,IntelliJ IDEA 会在您执行语句之前提示您指定参数的值。

  • 要执行参数化语句,请点击工具栏上的 执行 按钮 (执行按钮 ),并在第二列中输入值。 或者,若要打开 形参 对话框,请点击 查看形参 按钮(“查看参数”按钮)。

    执行参数化语句

示例

将数组作为参数

在 IntelliJ IDEA 中,用值替换参数是直截了当的。 要使用数组作为值,请在相应字段中指定您的数组。

在下面的示例中,参数 ? 可以替换为值 206, 'John', 'Smith'

INSERT INTO actor (actor_id, first_name, last_name, last_update) VALUES (?, '01.02.2023 13:34');
将值数组用作参数

有关参数的更多信息,请参阅数据库文档。

参数模式

如果您的脚本中有特定参数语法的参数,请使用正则表达式指定模式。

对于以下示例,必须在 工具 | 数据库 | 查询执行 | 用户参数 设置页面&#xa0; Ctrl+Alt+S 中设置 %{2}(\w+_\d+) 模式:

SELECT title, description, release_year FROM actor JOIN film_actor fa ON actor.actor_id = fa.actor_id JOIN film f ON f.film_id = fa.film_id WHERE last_name = '%%winnerpl_2';
在 IDE 设置对话框中的参数模式示例

预览表结构

在 IDE 代码编辑器中,您可以使用 快速文档 功能预览 SQL 语句中表的结构。

  • 要预览 SQL 语句中的表结构,请选择表并按 Ctrl+Q

快速文档 弹出窗口中包含 CREATE DDL 脚本及其他有关该表的信息。

有关此功能的更多信息,请参阅 快速文档

在编辑器选项卡中预览表结构

查看已执行语句历史

使用“查询历史”对话框

IntelliJ IDEA 存储您在查询控制台中运行的所有语句的历史记录。

  • 要打开 查询历史 对话框,请点击工具栏上的 浏览查询历史记录 按钮(浏览查询历史按钮 ),或按 Ctrl+Alt+E

    查询历史 对话框中,您可以执行以下操作:

    • 要筛选信息,请开始输入您的搜索查询。

    • 要将查询从 查询历史 对话框粘贴到控制台,请双击 查询历史 对话框左窗格中的查询。

    • 要从历史记录中删除记录,请选择该记录并按下 Delete

    查看已执行查询的历史记录

查看结果

通常,您运行查询时,会收到表格格式的结果。 IntelliJ IDEA 会在 data editor中显示结果。 默认情况下,对于每个语句,带有结果的数据编辑器会在 服务 工具窗口中的单独选项卡中显示。

有关查看查询结果的更多信息,请参阅 查询结果

服务工具窗口标签中 SELECT 语句的结果
最后修改日期: 2025年 4月 24日