数据提取器
启用 数据库工具和 SQL 插件
此功能依赖 数据库工具和 SQL 插件,该插件在 PyCharm 中默认捆绑并启用。 如果看不到相关功能,请确保未禁用该插件。
按下 Ctrl+Alt+S 打开设置,然后选择 。
打开 已安装 选项卡,找到 数据库工具和 SQL 插件,并选中插件名称旁边的复选框。
数据提取器 在编辑器中设置复制或查看数据的规则(在 文本 编辑器视图模式下)。 您可以在靠近 导出数据 图标( )的 数据提取程序 列表中选择默认提取器,配置现有提取器,或使用 Groovy 或 JavaScript 创建自定义提取器。

最后选择的提取器将成为新打开的编辑器选项卡的默认提取器。 对于 MongoDB,默认提取器始终为 JSON。
在下方视频中,数据使用 CSV 数据提取器进行复制,并在 文本 编辑器视图模式下使用 SQL 更新 和 管道符分隔 数据提取器进行查看。
通过数据提取器,您可以将数据库数据导出为 SQL 语句以及多种格式。 导出到文件时,会为每个表或视图创建单独的文件。 有关导出的更多信息,请参阅 导出部分。
支持的文件格式
可用脚本和支持的文件格式如下:
预定义脚本。 使用它们可将数据导出为一组
INSERT或UPDATE语句、 TSV 和 CSV 文件、 Excel XLSX 文件、 Markdown 、HTML 表格以及 JSON 格式。内置
脚本
文件格式
SQL 插入
.sql
SQL 更新
WHERE 子句
CSV
脚本
文件格式
CSV
.csv
TSV
.tsv
管道分隔
.txt
使用 CSV 格式配置 来创建基于 CSV 或任意 DSV 格式的自定义格式。
脚本化
脚本
文件格式
CSV
.csv
TSV
.tsv
Excel
.xlsx 、 .xls
HTML (groovy)
.html
HTML(js)
JSON
.json
Markdown
.md
单行
.sql
SQL-Insert-Multirow
SQL-Insert-Statements
漂亮
.txt
XML
.xml
自定义数据提取器。 使用 Groovy 或 JavaScript 以及提供的 API 创建它们。
为 DSV 配置提取器
您可以扩展默认功能,并基于 CSV 或任何 DSV 格式创建自己的格式。 在其设置中,您可以为行和标题设置分隔符,定义 NULL 值的文本,指定引号,为带分隔符的格式创建新的提取器。
从数据提取器列表中选择 配置 CSV 格式。
在 CSV 格式 对话框中,点击 添加格式 图标
。
指定新格式的名称(例如,
Confluence Wiki Markup)。定义格式设置:设置行和头部的分隔符,定义 NULL 值的文本,指定引用。 点击 确定。
创建格式后,您可以在 导出数据 图标(
)附近的下拉列表中选择它。
有关 CSV 格式 对话框的详细信息,请参阅 参考。
添加自定义提取器
您可以创建在 Groovy 或 JavaScript 上编写的您自己的 extractor。
在 GitHub 仓库 中找到一个用于脚本化扩展开发的预配置项目。
在 项目 工具窗口中,导航到 临时文件和控制台 | 扩展 | 数据库工具和 SQL | data | extractors 。
右键点击 提取器 节点并选择 。
输入文件名(例如,
PHP.array.groovy),其中:PHP:用于提取器菜单中的名称。array:提取器的输出。groovy:脚本的扩展名。
在新文件中键入或粘贴提取器的代码。 您可以使用 提取器 文件夹中其他提取器的代码来编写您的提取器。 此外,您可以尝试以下提取器:
TSV-Icelandic-Groovy.tsv.groovy on GitHub :复制制表符分隔的查询结果并将其粘贴到 Excel 中作为逗号分隔的内容。
Dbunit Dataset Export in Groovy on GitHub :用于 Dbunit 导出的提取器。
Table-Text-Groovy.txt.groovy 和 Fixed-length-fields.txt.groovy :生成具有定长列的 txt 文件的提取器。
PHP-Array.groovy :提取到 PHP 数组。
Markdown-JavaScript.markdown.js :一个提取到 Markdown 的工具。
请从提取器列表中选择提取器。
请考虑以下在 PyCharm 中添加 PHP 数组提取器的示例。
自定义数据提取器的 API
使用以下 API 创建自定义数据提取器。
绑定 | 方法(Groovy 和 JavaScript) | 描述 |
|---|---|---|
|
| 数据库方言 |
|
| 数据库表元数据 |
|
| 查询结果或当前打开的表编辑器中所有列的列表。 |
|
| 查询结果或当前打开的表编辑器中的选定列列表。 |
|
| 默认格式化方法。 |
|
| 提取器输出。 |
|
|
|
转置 | 指示表格编辑器是否处于转置模式的布尔值。 |
示例
您可以使用以下简单的 CSV 数据提取器作为自定义数据提取器的基础。 此数据提取器的完整版可在 PyCharm 中使用。 要定位它,请在 项目 工具窗口中导航到 临时文件和控制台 | 扩展 | 数据库工具和 SQL | data | extractors 。
参考
CSV 格式对话框
要访问此对话框,请点击工具栏上的 数据提取程序 列表并选择 配置 CSV 格式。
此对话框包含用于将表数据转换为分隔符分隔值格式(例如, CSV、TSV)以及反向转换的设置。
为防止加载其余数据,预览限制为 10 条记录。 当您更改设置时,预览将相应更新。
项目 | 描述 |
|---|---|
格式 | 选择可将文件数据成功转换为表的模板。 您可以更改预定义模板的设置或添加新模板。 要添加模板,请点击 添加格式 按钮( 使用 添加格式 ( |
值分隔符(S) | 选择或输入要用作值分隔符的字符。 |
行分隔符(R) | 选择或输入要用作行分隔符的字符。 |
null 值文本(N) | 当单元格包含 |
添加行前缀/后缀 | 点击该链接并输入行前缀和后缀。 前缀和后缀是字符序列,除行分隔符外,还用于指示一行的开始和结束。 |
引用 | 在 引号 下方区域中的每一行都是一个引用模式。 一个引用模式包括:
如果存在多个模式,将使用第一个模式。 使用 添加 ( |
为值加引号(Q) | 选择何时将值用引用字符括起来。
|
清除空格(W) | 忽略或移除空白字符。 如果清除此复选框,空白字符将被视为相应值的一部分。 |
第一行是头(H) | 将第一行视为包含列名的行。 |
第一列是头(H) | 将第一列视为包含行名的列。 |