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

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

0 前言

在 IntelliJ IDEA 中,您可以利用数据库工具中的 AI Assistant 功能,更高效地查询和处理数据。它可以显著加快 SQL 查询生成速度、解释代码、提供修复建议,甚至可以创建表并在命令中用测试数据填充!让我们开始吧!

启用 AI Assistant 插件:

1 编辑区的AI操作

1.1 生成SQL

只需单击 AI Assistant图标,在输入字段中写下请求,然后观看 AI Assistant将您的单词转换为精确的 SQL 代码:

1.2 修改现有SQL

按照相同的步骤修改现有的 SQL 查询。只需选择一个代码块,调用 AI Assistant的输入字段,然后输入您想要对当前查询进行的更改或添加即可。

1.3 测试数据表

可直接在编辑器中创建表格并用示例数据填充表格。点击 AI Assistant图标即可打开 “使用 AI 生成代码” 对话框,并要求 AI Assistant执行例如“添加查询,创建一个图书表并用三个示例行填充该表”的操作。

生成代码后,可预览并应用结果。

1.4 云补全

根据你的 SQL 查询上下文实时自动补全代码。无需执行任何额外操作即可在控制台中调用云补全功能,因为它已默认启用 - 只需继续查询即可!

2 与AI聊天

聊天中,可向 AI Assistant询问任何与数据库或查询相关的问题,让它执行操作等等!

提示:使用 /explain/refactor#thisFile 可在当前上下文中快速、准确地做出响应。

2.1 比较两个表的 DDL

在聊天中,还可指示 AI Assistant比较两个表的 DDL,以获得详细的响应,突出显示表结构之间的差异。在我们的示例中,我们使用以下提示:“比较 actor 表和 film_actor 表的 DDL”。

AI Assistant将生成详细的比较结果,分析主键、列、索引、外键、默认值和约束。它甚至会给出一个总结:

2.2 使用Explain Plan优化查询的性能

Explain Plan能够洞察查询的执行方式,对于维护健壮且可扩展的数据库应用程序至关重要。AI Assistant可以帮助识别查询中的问题并优化其整体性能。

首先,运行查询的 “解释计划” 。右键单击 SQL 语句,然后从上下文菜单中选择 “解释计划”|“解释计划(原始)” 。然后,将结果复制并粘贴到聊天框中,并请求进行分析和优化。本例中的初始成本为 93.22..134.83

AI Assistant将建议一个优化的查询代码,可通过单击插入符号处的插入代码片段立即将其插入控制台:

再次运行 “解释计划” 命令并检查成本。我们的示例现在显示较低的成本,即 52.80..94.62

3 AI prompts

要调用 AI prompt列表,右键单击 SQL 语句,从上下文菜单中选择 AI 操作 ,选择要执行操作:

解释查询

Explain Code 为你提供数据库环境中的上下文感知解释。

重构SQL

从上下文菜单中选择 “建议重构” ,AI Assistant将提供重构的代码片段以及这些更改为何效果更好的解释。

可通过单击 Show Diff 或选择 “Apply Immediately” 来并排检查两个版本以立即接受更改:

发现问题并提出修复建议

AI Assistant可以查找并修复 SQL 查询中的问题。从 AI 操作列表中选择 “查找问题” ,AI Assistant就会在聊天中提供解释。

然后,可要求 AI Assistant在聊天中修复代码。

添加您自己的提示

可通过【AI Actions】菜单添加自定义提示并使用它们。前往【Settings | Tools | AI Assistant | Prompt Library】,然后点击 + 即可进行设置。

Modify tables 修改表

AI Assistant可以帮助您修改表。在 “Database Tools” 窗口中,右键单击表并选择 Modify Table” 即可调出 “修改” 对话框。点击 AI Assistant 图标,然后输入请求,如:“将所有 VARCHAR 数据类型切换为 CHAR”。

一旦 AI Assistant 生成所请求的代码,会在对话框的预览窗格中查看它,然后接受建议。所有这些 AI Assistant功能可以大大提高您使用数据库工具时的工作效率。

本文由博客一文多发平台 OpenWrite 发布!

JavaEdge
374 声望417 粉丝