从SQL * Loader加载时标识符太长

时间:2014-12-19 08:57:44

标签: oracle sql-loader

我有一个像这样的表结构

CREATE TABLE  acn_scr_upload_header
(
FILE_RECORD_DESCRIPTOR    varchar2(5)    NOT NULL,
schedule_no               Number(10)     NOT NULL,
upld_time_stamp           Date           NOT NULL,
seq_no                    number         NOT NULL,
filename            varchar2(100)  ,
schedule_date_time        Date      
);

当我尝试通过SQL * Loader加载我的文件时,我在列文件名中遇到此值的错误:Stock_Count_Request_01122014010101.csv。错误是:

Error on table ACN_SCR_UPLOAD_HEADER, column FILENAME.  
ORA-00972: identifier is too long".

如果我尝试使用INSERT语句将相同的值插入表中,它可以正常工作。

我的数据文件Stock_Count_Request_01122014010101.csv看起来像

FHEAD,1,12345,20141103
FDETL,7,100,W,20141231,SC100,B,N,1,5
FTAIL,8,6

和控制文件

LOAD DATA
INFILE '$IN_DIR/$FILENAME'
APPEND
INTO TABLE ACN_SCR_UPLOAD_HEADER
WHEN FILE_RECORD_DESCRIPTOR = 'FHEAD'
FIELDS TERMINATED BY ","
TRAILING NULLCOLS
(
FILE_RECORD_DESCRIPTOR position(1),
LINE_NO FILLER,
schedule_no ,
schedule_date_time,
upld_time_stamp                sysdate,
seq_no  "TJX_STOCK_COUNT_REQ_UPLD_SEQ.NEXTVAL",
FILENAME     constant ""
)

0 个答案:

没有答案