【问题标题】:Trouble with Oracle SQL Loader and a date fieldOracle SQL Loader 和日期字段的问题
【发布时间】:2020-11-17 05:37:33
【问题描述】:

我有一个用管道分隔的 csv 文件,我正在尝试使用 SQL Loader 导入数据。表中的数据类型为日期。我想只导入 MM/DD/YYYY,但我遇到了错误。

我的这个字段的控制文件代码是:

field_a char(1024),
field_in_question DATE'MM/DD/RRRR',
field_c,

示例文件中的日期:

5/28/2019 0:00
3/30/2020 0:00
12/16/2019 0:00

我目前收到的错误是:

ORA-01858:在数字所在的位置发现了一个非数字字符 预计

任何帮助将不胜感激。

【问题讨论】:

    标签: oracle loader sql-loader


    【解决方案1】:

    Oracle DATE 类型包含时间组件。您的输入数据也有时间分量。因此,只需调整您的输入日期掩码即可。

    field_in_question DATE'MM/DD/YYYY hh:mi'
    

    请注意,我还将您的“年”掩码更改为“YYYY”。 'RR' 和“RRRR” 结构是作为一个临时创可贴来争取时间来解决 Y2K 错误的。那是 20 年前的事了。很久以前就不再需要临时修复了。

    【讨论】:

    • 谢谢,我做了更改,但仍然收到同样的错误。
    • 更新您的问题以显示整个控制文件和数据文件的真实样本。我怀疑您的字段分隔符/标识与您的实际数据不正确。
    【解决方案2】:

    方法如下。

    示例表:

    SQL> create table test (name varchar2(10), datum date, colc number);
    
    Table created.
    

    控制文件(包括样本数据):

    load data 
    infile *
    replace
    into table test
    fields terminated by '|'
    trailing nullcols
    ( 
    name,
    datum "to_date(:datum, 'mm/dd/yyyy hh24:mi')",
    colc
    )
    
    begindata
    Little|5/28/2019 0:00|1
    Foot|3/30/2020 0:00|2
    Bigfoot|12/16/2019 0:00|3
    

    加载会话和结果:

    SQL> $sqlldr scott/tiger control=test23.ctl log=test23.log
    
    SQL*Loader: Release 11.2.0.2.0 - Production on Pon Stu 16 22:35:58 2020
    
    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
    
    Commit point reached - logical record count 2
    Commit point reached - logical record count 3
    
    SQL> select * from test;
    
    NAME       DATUM                     COLC
    ---------- ------------------- ----------
    Little     28.05.2019 00:00:00          1
    Foot       30.03.2020 00:00:00          2
    Bigfoot    16.12.2019 00:00:00          3
    
    SQL>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-20
      • 2022-07-06
      • 2022-01-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多