本文已收录在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 发布!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。