永别了,控制台!

本文已收录在Github,关注我,紧跟本系列专栏文章,咱们下篇再续!

  • 🚀 魔都架构师 | 全网30W技术追随者
  • 🔧 大厂分布式系统/数据中台实战专家
  • 🏆 主导交易系统百万级流量调优 & 车联网平台架构
  • 🧠 AIGC应用开发先行者 | 区块链落地实践者
  • 🌍 以技术驱动创新,我们的征途是改变世界!
  • 👉 实战干货:编程严选网

0 前言

从 2025.3 版本开始,DataGrip 以及其他带有数据库支持的 JetBrains IDE 将不再使用「查询控制台(query console) 」这个名称。从现在起,将改用「查询文件(query file)」,因为控制台本质上一直就是文件,现在终于让 UI 与事实保持一致。还优化了整个工作流程,让操作更简单、更直观,也更统一。

1 历史回顾

为啥当初有「控制台」概念?JetBrains 第一次在 IntelliJ IDEA 中加入数据库功能时,大多 Java 开发者都是通过终端操作数据库。为了尽快在 IDE 中复现这种工作方式,JetBrains 为用户提供了一个可以临时编写 SQL 的区域------这个临时 SQL 文件就被称为 控制台(console)。

多年来,IDE 每个项目只提供一个默认控制台,似乎也够用。但随时间推移,用户提出更多需求,如希望能创建多个控制台、能选择数据库或 schema,以及希望能通过 UI 更方便切换上下文。

2 存在的问题?

控制台本质就是脚本文件,与其他数据库工具提供的脚本文件类似,但有一些让人困惑的地方:

  • 不属于项目结构。 控制台文件存在于项目结构之外,虽然用户其实是在项目中工作。
  • 不容易找到。 它们被保存在一个隐蔽的文件夹中(和 临时文件 scratch files 在一起),这让很多人创建了控制台却找不到保存位置。由于 DataGrip 会自动保存控制台文件,内容不会丢失,但这也让定位变得更困难。因为不会弹出「保存」提示,用户经常一头雾水找不到自己创建的控制台,也无法轻松切换上下文
  • 上下文切换麻烦。 无法通过 UI 修改控制台的 SQL 方言、数据源或 schema。如果想让它像普通文件一样工作,就得手动保存或迁移
  • 名称让人误解。 「查询控制台」这个词并不能准确表达它的功能,新用户经常因此感到困惑

总的来说,控制台的理念不错,但在实际使用中却不够方便------是时候做出改变了。

3 变更内容

经过反复思考,最终做最自然选择:把控制台与文件合并。

现在,查询操作完全基于文件形式,查询文件(query files) 会显示在项目中,更容易找到,也更方便管理。

具体变化如下:

想对数据库执行查询时,可像以前一样,从数据源或其对象的右键菜单创建查询文件。新文件会命名为 Query_N.sql,命名规则可在「设置」中自定义。

默认情况下,查询文件保存在项目文件夹下的 queries 文件夹。该文件夹可在「文件(Files)」工具窗口中查看。也可在「设置」中更改保存路径,选择的自定义文件夹也会在工具窗口中显示。

现在,绑定了数据库上下文的文件会显示一个类似数据源的图标,而不再是之前的通用数据库图标,更易区分查询文件。

以前控制台的限制全部取消!现可重新绑定查询文件、修改 SQL 方言或数据源,并像操作普通项目文件一样使用它。

数据库资源管理器工具栏上的「跳转到查询控制台(Jump to Query Console) 」按钮已更名为「跳转到查询文件(Jump to Query File)」,并换上了新图标。它现在会列出与当前数据源相关的所有查询文件。

升级到新版 DataGrip 时,会出现迁移对话框,帮助你将所有旧控制台迁移为查询文件,并引导你适应新的工作流程。

在 临时文件与控制台(Scratches and Consoles) 下的旧 Database Consoles 文件夹会暂时保留一个版本周期,之后将被彻底移除。

4 FAQ

现有控制台会丢失吗?

不会。会将它们安全地转换为 .sql 文件,并保存在原位置以确保安全。

还能保持原来的行为吗?

技术上可以,但仅限于旧项目,并且只在下一个版本周期内有效。每次重启 IDE 时仍会出现迁移提示框,不过你可以选择「不再显示」。对于新项目,只会启用新逻辑。

全局数据源(global data sources)的控制台会怎样?

在迁移对话框中,你可为这类数据源指定单独的迁移文件夹。这个文件夹会保存到设置中,并作为今后全局数据源查询文件的默认位置。要在 IDE 中访问这些文件,需要将该文件夹手动挂载到具体项目中。

其他 JetBrains IDE 也会这样吗?

会,但目前仅在 DataGrip EAP 中发布。其他带数据库功能的 JetBrains IDE 会自动将查询文件迁移到项目下 .idea 子文件夹中,这个文件夹通常会被 .gitignore 忽略。

5 接下来

在 2025.3 版本周期的后续更新中,将为数据库资源管理器添加一个新的 Query Files 节点。点击后可直接查看与当前数据源关联的所有查询文件,进一步提升可发现性。

相关推荐
Joy T2 小时前
Agent 确定性上下文设计:从 Prompt 参数注入到能力分层
java·开发语言·微服务·架构·prompt·agent context
m0_587383005 小时前
广州 24 小时自助健身房解决方案技术实现与实战指南
java·spring·小程序·架构·需求分析
·云扬·6 小时前
Prompt 工程与安全:从 System 设计到注入防御
java·人工智能·安全·ai·prompt
代码不停7 小时前
自动化测试(java)
java·开发语言·selenium·自动化
鬼手点金8 小时前
opencode-rules 插件
java·开发语言·前端·人工智能·chrome·git·github
paopaokaka_luck9 小时前
滑雪场管理系统(AI智能助手流式对话,ECharts 运营数据分析、教练、雪具与场地一体化预约,钱包支付退款、订单核销与服务评价)
java·人工智能·spring boot·网络协议·数据分析·echarts
Wang's Blog10 小时前
Java 项目实战: 交友项目 - Dubbo 的内部结构与一次调用的完整链路
java·dubbo
Wang's Blog10 小时前
Java 项目实战: 交友项目 - Dubbo 入门引导
java·dubbo·交友
蜗牛互联网10 小时前
Python Agent工具调用的白名单、参数校验与审批门禁
java·服务器·前端·人工智能·后端·python
SL_staff11 小时前
当规则引擎开始‘懂业务’:JVS-Rules金融风控四大原生能力拆解
java·python·全栈