【问题标题】:SQL*Loader error on BOUNDFILLER field in Oracle?Oracle 中 BOUNDFILLER 字段上的 SQL*Loader 错误?
【发布时间】:2017-11-09 14:45:49
【问题描述】:

我正在尝试将行解析为控制文件中的列。

我得到“数据文件中的字段超过最大长度”

我的控制文件:

OPTIONS (
ERRORS = 1,
DIRECT=TRUE,
LOAD=10
)
load data
APPEND
into table table_1
fields terminated by "#x000A"
(
Column0 BOUNDFILLER,
Column1 "SUBSTR(:Column0, 1, 10)"
)

表:

create table table_1 (
Column0 VARCHAR2(2000)
Column1 VARCHAR2(124)
);

看起来好像是因为每行的长度超过 2000,但我检查了文件,发现它少于 1000。

那么为什么会出现这个错误?

【问题讨论】:

    标签: oracle sql-loader


    【解决方案1】:

    错误就在这里。 Column0 BOUNDFILLER, 这条线等于Column0 BOUNDFILLER char(255),

    char(255) 是默认值。

    您正试图将 1000 放入变量中,仅 255 的空间。
    解决办法是Column0 BOUNDFILLER char(2000) ,

    【讨论】:

      猜你喜欢
      • 2013-08-20
      • 1970-01-01
      • 1970-01-01
      • 2020-04-19
      • 2021-09-17
      • 1970-01-01
      • 2012-09-11
      • 2010-10-15
      相关资源
      最近更新 更多