进口
最后修改时间:2023 年 9 月 20 日启用数据库工具和 SQL 插件
此功能依赖于数据库工具和 SQL 插件,默认情况下,它们在 IntelliJ IDEA 中捆绑并启用。如果相关功能不可用,请确保您没有禁用该插件。
笔记
数据库工具和 SQL 插件仅在 IntelliJ IDEA Ultimate 中可用。
按打开 IDE 设置,然后选择插件。CtrlAlt0S
打开已安装选项卡,找到数据库工具和 SQL插件,然后选中插件名称旁边的复选框。
要从脚本文件导入数据,请按照运行 SQL 文件页面中的说明运行该文件。除了脚本文件之外,您还可以从 CSV、TSV 或任何其他包含分隔符分隔值的文本文件导入数据。
导入数据
在 数据库工具窗口(“视图”|“工具窗口”| “数据库”)中,右键单击数据源或架构,然后选择“SQL 脚本”|“数据库”。运行 SQL 脚本....
在打开的文件浏览器窗口中,导航到要运行的 SQL 文件,然后单击“打开”。
选择运行配置的设置。
目标数据源/架构:要运行数据库脚本的数据库或架构。此设置取决于方言。
如果您选择数据源作为目标,IntelliJ IDEA 会显示将在其中运行脚本的架构。这是默认架构。
脚本文件:要运行的 SQL 文件。要添加文件,请单击“添加”按钮 ( ) 并导航到要运行的文件。如果脚本包含架构切换,您将看到警告 ( )。
单击运行。
提示
要查看如何针对数据库运行 SQL 文件的其他选项,请参阅运行 SQL 文件。
导入分隔符分隔的值
在 数据库工具窗口(视图 | 工具窗口 | 数据库)中,右键单击架构或表,然后选择导入/导出| 数据库。从文件导入数据。
导航到包含分隔符分隔值的文件并双击它。
在“导入“file_name”文件”对话框中,指定数据转换设置并单击“导入”。
您可以选择在什么架构中创建表以及是否将数据导入到新表或现有表。要选择架构或表,请使用表和目标架构列表。
要将第一行标记为标题,请右键单击“数据预览”窗格中的该行,然后选择“第一行是标题”。
导入多个 CSV 文件
在 数据库工具窗口(视图 | 工具窗口 | 数据库)中,右键单击架构或表,然后选择导入/导出| 数据库。从文件导入数据。
导航到包含分隔符分隔值的文件,选择它们,然后单击“打开”。
在导入“file_name”文件对话框中,指定每个文件的数据转换设置。您可以浏览“源”窗格中的文件。单击导入以导入文件。
您可以选择在什么架构中创建表以及是否将数据导入到新表或现有表。要选择架构或表,请对所有源列表使用表和目标架构。
要将第一行标记为标题,请右键单击“数据预览”窗格中的该行,然后选择“第一行是标题”。
有关数据转换设置的详细信息,请参阅“导入文件”对话框。
笔记
如果您将文件拖到模式中或对模式执行从文件导入数据命令,IntelliJ IDEA 会为您导入的数据创建一个新表。如果您对现有表执行相同的操作,IntelliJ IDEA 会将数据添加到该表。
导入多个表
选择要复制到不同架构、数据库或现有表的表。
打开导入“table_name”表对话框。要打开导入“table_name”表对话框,您可以使用以下操作:
右键单击所选内容并导航至“导入/导出”| 将表复制到.
将选择拖到架构或数据库中。
按,键入并按。CtrlShift0A
copy tables to
Enter
从“所有源的目标架构”列表中,选择要在其中创建表的架构。如果是单个表,此菜单项称为Target schema。
在表列表中,键入新表的名称或选择现有表以将数据添加到所选表。
在源列表中,单击要配置的表。
(可选)单击“添加”图标 ( ) 添加列、键和索引。
(可选)如果要在 IDE 遇到不可转换值时插入 NULL,请选择“将不可转换值插入为空” 。
如果您想在导入期间禁用索引和触发器,请选择禁用索引和触发器,锁定表(可能更快) 。请注意,如果选择此选项,可能会导致触发器不触发且无法传递其结果的情况。尽管它可能会提高导入过程的性能。仅当目标表(将值复制到其中)具有索引或触发器时,该选项才可用。
单击“导入”。
恢复 MySQL 和 PostgreSQL 的完整数据转储
您可以使用mysql
MySQL 的客户端实用程序或PostgreSQL 的pg_restore或psql来恢复数据转储。pg_restore选项用于自定义格式pg_dump -Fc
或目录格式pg_dump -Fd
转储。psql选项用于 SQL 格式转储。
如果您在上下文菜单中看不到恢复选项,请验证您是否为数据源使用了正确的 JDBC URL。
在 数据库工具窗口(视图 | 工具窗口 | 数据库)中,右键单击架构或数据库并导航到导入/导出组:
Restore with "mysql":用于 MySQL 数据源。在“mysql路径”字段中,指定 MySQL 可执行文件的路径(例如,C:
\Soft )。\mysql-8.0.19-winx64 \bin \mysql.exe 使用“pg_restore”恢复:对于 PostgreSQL 数据源。pg_restore选项可用于除数据源级别之外的大多数数据库对象。
使用“psql”恢复:对于 PostgreSQL 数据源。psql选项可用于大多数数据库对象(表和模式级别除外)。
恢复:用于 PostgreSQL 数据源。包括两个选项卡:pg_restore和psql。
在“使用 <dump_tool> 还原”对话框中,在“<dump_tool> 路径”字段中指定还原工具可执行文件的路径。
笔记
指定转储工具可执行文件的完整显式路径。
(可选)编辑对话框下部的命令行选项。
单击运行。
提示
对于 PostgreSQL,您可以在表级别使用“pg_restore”进行恢复。
参考:导入对话框
当您导入CSV、TSV 或任何其他包含分隔符分隔值的文本文件时,会出现“导入“file_name”文件”对话框。
具有分隔符分隔值的文件的设置
这些设置仅在“导入文件”对话框中可用。
物品 | 描述 |
---|---|
格式 | 选择一个能够成功将文件数据转换为表格的模板。您可以更改预定义模板的设置或添加新模板。要添加模板,请单击“添加格式”按钮 ( )。 使用添加格式( )、删除格式( )、向上( ) 和向下( ) 按钮创建、删除和重新排序格式;复制格式( ) 创建所选格式的副本。 |
值分隔符 | 选择或键入要用作值分隔符的字符。 |
行分隔符 | 选择或键入要用作行分隔符的字符。 |
空值文本 | 如果单元格包含该值,请选择或键入要使用的文本 |
添加行前缀/后缀 | 单击链接并输入行前缀和后缀。前缀和后缀是字符序列,除了行分隔符之外还指示行的开头和结尾。 |
引述 | 报价下方区域中的每一行都是一个报价模式。报价模式包括:
如果有多个模式,则使用第一个模式。 使用添加( )、删除( )、向上( ) 和向下( ) 按钮创建、删除和重新排序模式。 |
报价值 | 当您想要将值括在引号字符内时选择。
|
修剪空格 | 忽略或删除空白字符。如果清除此复选框,则空白字符将被视为相应值的一部分。 |
第一行是标题 | 将第一行视为包含列名的行。 |
第一列是标题 | 将第一列视为包含行名称的列。 |
当您将表导入现有表或另一个数据库或模式时,会出现“导入‘table_name’表”对话框。
In this dialog, specify the data mapping info and the settings for the destination table.
表名、结构和数据映射
物品 | 描述 |
---|---|
目标模式 | 您要在其中创建或复制表的架构。您可以选择另一个数据源中的架构。 |
桌子 | 新表或现有表的名称(如果您想要将数据添加到现有表)。 |
评论 | 对表发表评论。 |
专栏| 按键| 索引| 外键 | 列、键和索引的数据映射和定义。双击该行开始编辑。 映射到字段指定文件中的数据列与数据库中相应列的关系。如果清除此字段,则不会将任何数据添加到数据库中的目标列。 要删除列,请选择相应的行并单击“删除”按钮。 |
数据和 DDL 预览
物品 | 描述 |
---|---|
数据预览 | 生成的数据将如何导入数据库的预览。 |
DDL 预览 | IntelliJ IDEA 将运行以创建表的一个或多个语句。您可以在DDL 预览字段中编辑语句。 |
编码、错误和日志
物品 | 描述 |
---|---|
编码 | (仅限“导入文件”对话框)为源文件中的数据选择字符编码。 |
将错误写入文件 | 将导入期间发生的错误写入文本文件中。 |
将不可转换的值插入为 null | 将 |
禁用索引和触发器,锁定表(可能更快) | 在导入期间禁用索引和触发器。请注意,如果选择此选项,可能会导致触发器不触发且无法传递其结果的情况。尽管它可能会提高导入过程的性能。仅当目标表(将值复制到其中)具有索引或触发器时,该选项才可用。 |
感谢您的反馈意见!