当前位置: 首页 > 知识库问答 >
问题:

在SQL加载器中重新格式化日期

鄢修德
2023-03-14

我正在使用SQL Loader加载Oracle表,并且我对日期格式有问题。包含数据的CSV文件包含格式为YYYY-MM-DD HH:MM:SS的字符串,但Oracle表要求日期格式为DD-MON-YY。

我目前正在逐行查看CSV文件,以查找并重新格式化加载前的任何日期,但文件可以达到1000万行,这可能是一个非常缓慢的过程。SQL Loader是否允许在加载中重新格式化日期?

我在找像这样的东西

LOAD DATA
INFILE 'data.csv'
TRUNCATE
INTO TABLE data
FIELDS TERMINATED BY '|'
TRAILING NULLCOLS
(
COL1,
COL2,
CREATED_DATE DATE 'DD-MON-YY',
LAST_UPDT_DATE DATE 'DD-MON-YY
)

我读过一些建议,认为这个DATE命令可以自动格式化日期,但到目前为止还没有成功。

共有1个答案

须彭亮
2023-03-14

假设数据库中实际将创建日期和上次更新日期定义为日期,则它们没有格式。它们以内部压缩二进制格式存储,人类无法读取。

您的控制文件需要指定表示日期的平面文件中字符串的格式。您说格式是“YYYY-MM-DD HH: MM: SS”,但这没有意义。分钟是MI而不是MM,所以我假设这是一种类型。HH是12小时时间格式,但如果没有AM/PM指示器,这就没有意义。所以我猜你的字符串使用的是24小时时间格式,即HH24。所以我的猜测是你想要

CREATED_DATE DATE 'YYYY-MM-DD HH24:MI:SS',
 类似资料:
  • 问题内容: 我正在从数据库中提取各种帖子的日期。日期采用以下格式: 如何将这些日期重新格式化为更用户友好的格式: 假设从mysql数据库获取的日期存储在名为: 问题答案:

  • 嗨,我正试图将数据从一个文件加载到Oracle中的一个表中,但我遇到了一个错误ORA-01843:在插入日期时不是一个有效的月份。 干杯

  • 我有一个订单和it订单日期的数据库,然后it订单日期将上传到这样的数据库(3-3-2020) 然后在我的shop应用程序中,我使用JSON调用数据库,我想将3-3-2020转换为2020年3月的星期二 我尝试这个解决方案 但它给了我这个错误 那么如何重新格式化日期呢?

  • 我从后端获取json,如下所示: 并在json中循环,如下所示: 但是,这里的只是在td列中打印,如以下。那么,我如何在每个tds中使这个显示像这样呢? 我的尝试: 我对两种解决方案都是开放的,即:后端和前端。对于我的后端,我正在使用django,如果您需要查看任何来自后端的代码,请告诉我。

  • 问题内容: 我正在寻找SQL的Java开源美化工具或重新格式化工具,可用于清理使用openArchitectureWare生成的DDL语句。 对“ 在线代码美化工具和格式化程序 ” 的回答对我没有任何帮助,我还无法使Simple SQL Formatter 对我有用。 问题答案: 更新2: 在版本4.0中移动了。现在位于:。 更新1: 技术在前进。如Alex所述, 从3.3.2.GA版本开始不再存

  • 我在PHP应用程序中使用Twig, 我使用的PHP对象有一个名为“date”的属性,该属性来自SQL Server。 看起来像:“三月2 2014 12:00:00:000” 我尝试使用Twig将其转换为显示,我尝试使用| date(“Y-m-d”),但没有成功: 在呈现模板期间引发异常(“DateTime::u构造()[function.DateTime---construct]:未能分析“…”