登录
推荐 文章 Go 技术 课程 下载 专题 AI
首页 >  文章 >  软件教程

DataGrip 怎么把查询结果导出成 INSERT 语句

来源:17golang原创

时间:2026-09-06 05:00:42 106浏览 收藏

在 DataGrip 里把查询结果变成 INSERT 语句,关键不是直接按 Ctrl+C,而是打开结果集工具栏的 Export Data,把提取器切换为 SQL Inserts,再用 Export to File 保存为 .sql 文件。这样导出的内容更适合迁移少量测试数据、准备初始化脚本或提交到代码仓库。

要点速览
  • 入口在查询结果标签的 Export Data,不是普通复制。
  • Extractor 选择 SQL Inserts,输出格式才是 INSERT 语句。
  • 导出后重点核对列名、NULL、字符串引号和文件位置。
日常做数据迁移、备份测试环境数据的时候,经常需要把DataGrip查出来的结果直接转成INSERT语句,不用手动逐个拼SQL,能省不少重复操作的时间,整个操作流程也很清晰,跟着界面选项点选就能完成。
右键选中查询结果区域,找到导出为SQL INSERT的选项,按需设置字段格式和导出范围,就能生成可以直接执行的插入语句。

一、先从查询结果打开 Export Data

先在 DataGrip 的 Query Console 执行查询,确保下方已经出现 Result Set。点击结果区域工具栏的 Export Data 图标,打开导出设置。也可以在结果单元格上右键选择导出相关操作,但从工具栏进入更容易确认当前导出的确实是整张结果集。

DataGrip 查询结果工具栏中的 Export Data 入口和 Result Set
图1:在 DataGrip 查询结果工具栏找到 Export Data,入口必须对应当前结果集。

这里不要把普通复制和整表导出混为一谈。直接复制通常只针对选中的行;Export Data 则会使用当前选择的数据提取器处理结果。

二、选择 SQL Inserts 提取器并设置输出

在 Export Data 对话框里先看 Source,确认它显示的是当前 Query Result。然后展开 Extractor,选择 SQL Inserts。DataGrip 内置提取器可以把数据导出为 INSERT 或 UPDATE 等 SQL 形式;选择 CSV、JSON 等其他项,就不会得到目标脚本。

DataGrip Export Data 对话框中选中 SQL Inserts 并设置 Output file
图2:在 Export Data 对话框选择 SQL Inserts,并把输出目标设为 .sql 文件。

Output file 指定文件名,例如 seed_users.sql,再点击 Export to File。如果只是临时粘贴到聊天或编辑器,也可以使用 Copy to Clipboard;要留存可重复执行的脚本,优先保存文件。

设置项应该怎么选核对重点
Source当前 Query Result不是误选的其他标签页
ExtractorSQL Inserts不要误选 CSV 或 JSON
Output file可写目录下的 .sql 文件文件名和目录便于回溯

三、打开 .sql 文件核对 INSERT 结果

导出完成后打开生成的 SQL 文件,先看语句骨架是否符合预期。示例中,列名和数据值应一一对应;数据库里的 NULL 应保持为 NULL,而不是被当成字符串;名称中包含引号、逗号或换行时,要确认提取器已经按 SQL 语法完成转义。

-- 只示意导出的 INSERT 结果,实际字段以查询结果为准
INSERT INTO users (id, name, status) VALUES (101, 'Alice', 'active');
INSERT INTO users (id, name, status) VALUES (102, 'Bob', NULL);
DataGrip 导出的 export.sql 文件中包含 INSERT INTO、列名和 NULL 值
图3:打开导出的 .sql 文件,核对 INSERT 列名、NULL 与字符串转义后的结果。

最后做一次轻量检查:文件是否存在、语句数量是否接近结果行数、关键主键是否完整。若要在目标库执行,先确认目标表结构、字符集和唯一键约束;导出成功不等于脚本可以无条件覆盖生产数据。

常见问题

为什么按 Ctrl+C 没有得到完整 INSERT 文件?

Ctrl+C 主要是复制当前选择内容,格式也取决于当前复制方式。要生成完整 SQL 文件,应从结果工具栏进入 Export Data,选择 SQL Inserts。

Extractor 里找不到 SQL Inserts 怎么办?

先确认打开的是 DataGrip 的表数据或查询结果编辑器,再展开 Export Data 旁边的提取器列表。内置脚本名称就是 SQL Inserts;如果界面状态异常,重新打开结果标签后再操作。

导出的 INSERT 能直接执行吗?

通常还要核对目标表结构、数据库方言、权限、字符集和唯一键冲突。把它当作数据脚本先在隔离环境试跑,再进入正式流程。

声明:本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>