有一个专门用来将 DSV(CSV 或 TSV)文件导入至数据库的 UI。 点击想要导入数据的架构,然后从上下文菜单中选择 Import From File… 。 然后选择存储数据的 CSV 文件。
您将看到导入对话框窗口。 左边的面板显示了格式规格:如果第一行是页眉(它有单独的格式选项),那么请选择分隔符,并指定你是否在文件中引述了值。
在右侧,您可以看到描述要创建表的框架和结果数据预览。 按下删除可以移除结果中的一行。 如果您希望从已有的表中导入数据,那么请使用该表的上下文菜单并选择从文件导入...
如果文件中有错误会怎么样? 本程序提供向文件写入错误记录选项。 导入过程不会中断,但所有错误的行都将被记录在该文件内。
从 Excel 表中粘贴数据。 要执行该操作,通常您需要在 DSV 格式中粘贴数据的能力。 在 DataGrip 中,您可以定义任意您想要的 格式,或者您也可以让 IDE 自动侦测格式:齿轮图标 → 粘贴 格式:
DataGrip 可以将 CSV 文件作为表进行编辑。 在上下文菜单中点击作为表编辑。
然后选择分隔符,指定表是否有页眉,以及什么时候引述值等等。 有即时表预览可以使用。
表可以导出至:
— 文件。 表的上下文菜单 → 向文件转储数据 (Dump data to file)。
— 其他已有表 (Another existing table)。 表的上下文菜单 → 将表复制到 (Copy Table to) (或在表上按
F5) → 选择已有表。
— 任意数据库供应商的任意数据源中的新表。 表的上下文菜单 →
将表
复制到(或在表上按F5) → 选择目标架构。 或者直接把它拖放到那里! 这个 GIF 动画显示了 PostgreSQL 表格是如何被复制到 SQLite 数据源中的。
SQL 查询可以作为结果导出到文件中。 语句的上下文菜单 → 执行到文件 (Execute to file) → 选择格式。 如果查询比较慢,该功能很实用; 如果你导出结果集,查询将再次运行。 在这种情况下,您只需要运行一次。
结果集可以导出至:
— 文件。 转储按钮 → To File.
— 剪贴板。 转储按钮 → 至剪贴板。
— 其他已有表。导出按钮 → 选择已有表。
— 任意数据库供应商中任意数据源中的新表。 导出按钮 → 选择目标架构。
数据编辑器中的选择可以复制到剪贴板:该操作可以通过常规方式 上下文菜单 → 复制 或 Ctrl+C 完成。
您每次导出到文件或剪贴板时,都需要选择格式。 通常是 CSV 文件,但在许多情况下,您需要 JSON、XML 甚至是 DML 语句。 在下拉列表中选择合适的数据提取工具。 或者创建您自己的导出格式。
任何表或结果集都可以用一组 INSERT
语句展示。 为此,请从下拉列表中选择 SQL 插入。 在部分情况下,在向其他表中添加数据时,它比直接编写 INSERT
+SELECT
查询更快。 该生成可以识别自动递增 ID。
它还可以展示为一组 UPDATE
语句,可以帮您修改数据。
列表中有两个预设格式:逗号分隔值和 Tab 分隔值。 您可以根据 DSV 创建任意自定义格式。 比如,它可以是 Confluence Wiki Markup。
有一个您无法更改的预设提取工具:HTML 表。 此外还有脚本提取工具: HTML-Groovy.html.groovy 和 XML-Groovy.xml.groovy 等等。 您可以修改这些提取工具。
JSON-Groovy.json.groovy提取工具可以将您的表或结果集导出至 JSON。
要处理更加复杂的形式,请考虑使用脚本提取工具。 部分提取工具已经可以通过 CSV-Groovy.csv.groovy 和 HTML-Groove.html.groovy 等使用。 在提取工具菜单中选择转到脚本目录,导航至它们的存储文件夹。
这些脚本是用 Groovy 编写的,但也可以用 JavaScript 编写,而且通常位于 Scratches 和 Consoles/Extensions/Database Tools and SQL/data/extractors 中。 修改已有提取工具或在这里添加您自己的提取工具。
要了解关于创建提取工具的更多信息,请阅读本教程。