使用 SQL Developer 将 CSV 文件导入 Oracle

Posted

技术标签:

【中文标题】使用 SQL Developer 将 CSV 文件导入 Oracle【英文标题】:Import CSV File into Oracle using SQL Developer 【发布时间】:2018-11-14 06:55:55 【问题描述】:

我正在尝试使用 SQL Developer 工具将数据从 CSV 文件导入 Oracle GroupSpace 表。我收到日期列的错误。我的日期列具有以下格式的日期。

5/6/2016
4/11/2018
11/6/2017...

我收到日期列具有无效或空日期格式的错误。

任何关于在导入日期列时使用什么格式日期格式的指针将不胜感激。

非常感谢! JH

【问题讨论】:

【参考方案1】:

如果您不确定日期是否有效(例如,没有什么可以阻止您在 CSV 文件中输入 5/55/2016,而且这肯定不是有效的 DATE 值),您可以创建一个暂存表,其列是 VARCHAR2 数据类型 - 它接受 一切,甚至像 2016 年 5 月 55 日这样的垃圾。

然后,在你加载数据之后,编写一些 SQL 来查找错误,修复它们,然后将数据移动到目标表中。

【讨论】:

【参考方案2】:

在文本编辑器中检查 CSV 数据并查找代表月份的部分(月份值将在 1..12 范围内)。如果您使用美国日期,则使用MM/DD/YYYY,否则您应该使用DD/MM/YYYY 作为日期格式。如果数据混合了两者,那么您必须将这些文件分开并为每个文件使用不同的格式,否则您可能会在数据库中获得无效的日期值。

【讨论】:

【参考方案3】:

SQL Developer 可以帮助您。

您可以尝试下拉菜单中的日期格式掩码。如果我们能猜到,我们将默认为一个。出于某种原因,您的数据...欺骗了我们,但您可以输入自己的数据。

如果你得到一些“有效”的东西,警告就会消失。

如果您弄错了,我们会在您进入下一步之前通知您。

You can find all the data format masks here.

【讨论】:

很高兴听到,@JHegde

以上是关于使用 SQL Developer 将 CSV 文件导入 Oracle的主要内容,如果未能解决你的问题,请参考以下文章

数据从 SQL Developer 导出到 CSV

PLSQL Developer导入csv文件到oracle

通过 sql developer 导入 csv 时,单引号被转换为 2 个单引号

ORA-29280: 在 SQL Developer 中使用目录的目录路径无效

Oracle通过PL/SQL Developer导出数据为CSV格式,VARCHAR2类型的字段如果存入的是数值(例如3307830000004059)太长,最后一位会被置为0

SQL Developer 脚本输出到数据网格