首页 > 解决方案 > ORA-01841: (完整) 年份必须介于 -4713 和 +9999 之间,并且不是 0 SQL 加载程序和 TOAD 问题

问题描述

我正在尝试将数据加载到“LOAN”表中。数据是位置格式的文本文件是 20190512。当我将列类型更改为 varchar2(8 char) 时,数据已加载,但是当我使用 TO_Date 或 Date 函数在将其类型更改为 DATE 列类型后加载时,我在下面提到的错误

ORA-01841: (完整)年份必须介于 -4713 和 +9999 之间,而不是 0

注:该栏目暂无该仓位数据。

我已经尝试过 "TO_DATE(:DR430_LAST_MOD_DATE, 'YYYYMMDD')" 和 Date ,但似乎都不起作用。但是,类似的 to_Date 语法适用于其他日期列。此外,此列处于焦点位置,此时该位置没有数据。

DR430_LAST_MOD_DATE POSITION (7404:7411) DATE "YYYYMMDD" NULLIF (DR430_LAST_MOD_DATE = BLANKS), --请建议在位置之后写什么。

标签: sqlsql-loader

解决方案


在转换为日期之前尝试删除空格

TO_DATE(TRIM(:DR430_LAST_MOD_DATE), 'YYYYMMDD')

推荐阅读