永别了,控制台!
<p>本文已收录在Github,<strong>关注我,紧跟本系列专栏文章,咱们下篇再续!</strong></p><ul>
<li>🚀 魔都架构师 | 全网30W技术追随者</li>
<li>🔧 大厂分布式系统/数据中台实战专家</li>
<li>🏆 主导交易系统百万级流量调优 & 车联网平台架构</li>
<li>🧠 AIGC应用开发先行者 | 区块链落地实践者</li>
<li>🌍 以技术驱动创新,我们的征途是改变世界!</li>
<li>👉 实战干货:编程严选网</li>
</ul>
<h2 id="0-前言">0 前言</h2>
<p>从 <strong>2025.3</strong> 版本开始,DataGrip 以及其他带有数据库支持的 JetBrains IDE 将不再使用「<em>查询控制台(query console)</em>」这个名称。从现在起,将改用「<em>查询文件(query file)</em>」,因为控制台本质上一直就是文件,现在终于让 UI 与事实保持一致。还优化了整个工作流程,让操作更简单、更直观,也更统一。</p>
<h2 id="1-历史回顾">1 历史回顾</h2>
<p>为啥当初有「控制台」概念?JetBrains 第一次在 IntelliJ IDEA 中加入数据库功能时,大多 Java 开发者都是通过终端操作数据库。为了尽快在 IDE 中复现这种工作方式,JetBrains 为用户提供了一个可以临时编写 SQL 的区域——这个临时 SQL 文件就被称为 <em>控制台(console)</em>。</p>
<p>多年来,IDE 每个项目只提供一个默认控制台,似乎也够用。但随时间推移,用户提出更多需求,如希望能创建多个控制台、能选择数据库或 schema,以及希望能通过 UI 更方便切换上下文。</p>
<h2 id="2-存在的问题">2 存在的问题?</h2>
<p>控制台本质就是脚本文件,与其他数据库工具提供的脚本文件类似,但有一些让人困惑的地方:</p>
<ul>
<li><strong>不属于项目结构。</strong> 控制台文件存在于项目结构之外,虽然用户其实是在项目中工作。</li>
<li><strong>不容易找到。</strong> 它们被保存在一个隐蔽的文件夹中(和 <em>临时文件 scratch files</em> 在一起),这让很多人创建了控制台却找不到保存位置。由于 DataGrip 会自动保存控制台文件,内容不会丢失,但这也让定位变得更困难。因为不会弹出「保存」提示,用户经常一头雾水找不到自己创建的控制台,也无法轻松切换上下文</li>
<li><strong>上下文切换麻烦。</strong> 无法通过 UI 修改控制台的 SQL 方言、数据源或 schema。如果想让它像普通文件一样工作,就得手动保存或迁移</li>
<li><strong>名称让人误解。</strong> 「查询控制台」这个词并不能准确表达它的功能,新用户经常因此感到困惑</li>
</ul>
<p>总的来说,控制台的理念不错,但在实际使用中却不够方便——是时候做出改变了。</p>
<h2 id="3-变更内容">3 变更内容</h2>
<p>经过反复思考,最终做最自然选择:<strong>把控制台与文件合并</strong>。</p>
<p>现在,查询操作完全基于文件形式,<em>查询文件(query files)</em> 会显示在项目中,更容易找到,也更方便管理。</p>
<p>具体变化如下:</p>
<p>想对数据库执行查询时,可像以前一样,从数据源或其对象的右键菜单创建查询文件。新文件会命名为 <em>Query_.sql</em>,命名规则可在「设置」中自定义。</p>
<p><img src="https://img2024.cnblogs.com/blog/1097393/202512/1097393-20251212131211180-795038573.png"></p>
<p>默认情况下,查询文件保存在项目文件夹下的 <em>queries</em> 文件夹。该文件夹可在「文件(Files)」工具窗口中查看。也可在「设置」中更改保存路径,选择的自定义文件夹也会在工具窗口中显示。</p>
<p>现在,绑定了数据库上下文的文件会显示一个类似数据源的图标,而不再是之前的通用数据库图标,更易区分查询文件。</p>
<p><img src="https://img2024.cnblogs.com/blog/1097393/202512/1097393-20251212131213118-1112681074.png"></p>
<p>以前控制台的限制全部取消!现可重新绑定查询文件、修改 SQL 方言或数据源,并像操作普通项目文件一样使用它。</p>
<p><img src="https://img2024.cnblogs.com/blog/1097393/202512/1097393-20251212131210152-2111474006.png"></p>
<p>数据库资源管理器工具栏上的「<em>跳转到查询控制台(Jump to Query Console)</em>」按钮已更名为「<em>跳转到查询文件(Jump to Query File)</em>」,并换上了新图标。它现在会列出与当前数据源相关的所有查询文件。</p>
<p><img src="https://img2024.cnblogs.com/blog/1097393/202512/1097393-20251212131209886-934216141.png"></p>
<p>升级到新版 DataGrip 时,会出现迁移对话框,帮助你将所有旧控制台迁移为查询文件,并引导你适应新的工作流程。</p>
<p>在 <em>临时文件与控制台(Scratches and Consoles)</em> 下的旧 <em>Database Consoles</em> 文件夹会暂时保留一个版本周期,之后将被彻底移除。</p>
<p><img src="https://img2024.cnblogs.com/blog/1097393/202512/1097393-20251212131209590-1309622785.png"></p>
<h2 id="4-faq">4 FAQ</h2>
<p><strong>现有控制台会丢失吗?</strong><br>
不会。会将它们安全地转换为 <strong>.sql</strong> 文件,并保存在原位置以确保安全。</p>
<p><strong>还能保持原来的行为吗?</strong><br>
技术上可以,但仅限于旧项目,并且只在下一个版本周期内有效。每次重启 IDE 时仍会出现迁移提示框,不过你可以选择「不再显示」。对于新项目,只会启用新逻辑。</p>
<p><strong>全局数据源(global data sources)的控制台会怎样?</strong><br>
在迁移对话框中,你可为这类数据源指定单独的迁移文件夹。这个文件夹会保存到设置中,并作为今后全局数据源查询文件的默认位置。要在 IDE 中访问这些文件,需要将该文件夹手动挂载到具体项目中。</p>
<p><strong>其他 JetBrains IDE 也会这样吗?</strong><br>
会,但目前仅在 DataGrip EAP 中发布。其他带数据库功能的 JetBrains IDE 会自动将查询文件迁移到项目下 <em>.idea</em> 子文件夹中,这个文件夹通常会被 <em>.gitignore</em> 忽略。</p>
<p><img src="https://img2024.cnblogs.com/blog/1097393/202512/1097393-20251212131209505-1840446148.png"></p>
<h2 id="5-接下来">5 接下来</h2>
<p>在 2025.3 版本周期的后续更新中,将为数据库资源管理器添加一个新的 <em>Query Files</em> 节点。点击后可直接查看与当前数据源关联的所有查询文件,进一步提升可发现性。</p><br><br>
来源:https://www.cnblogs.com/JavaEdge/p/19340995
頁:
[1]