sqlldr 导入时报如下错误:
Record 1: Rejected - Error on table INFOBASE, column CONTENT.
Field in data file exceeds maximum length
Record 2: Rejected - Error on table INFOBASE, column CONTENT.
Field in data file exceeds maximum length
我的控制文件为
OPTIONS ( DIRECT=TRUE)
LOAD DATA
INFILE '/u/oracle/cdrd/sms_data/hebei_yd/hb_yd_sms_content.txt'
BADFILE '/u/oracle/sqlldr/log/hebei_yd/hb_yd_sms_content.bad'
DISCARDFILE '/u/oracle/sqlldr/log/hebei_yd/hb_yd_sms_content.dsc'
INTO TABLE "ETL"."HB_YD_SMS_CONTENT"
TRUNCATE
FIELDS TERMINATED BY ','
TRAILING NULLCOLS
(sms_id,
category_id,
areas_id,
sms_type,
content )
表定义为:
CONTENT字段为varchar2(4000 char)
解决:
控制文件修改为:
OPTIONS ( DIRECT=TRUE)
LOAD DATA
INFILE '/u/oracle/cdrd/sms_data/hebei_yd/hb_yd_sms_content.txt'
BADFILE '/u/oracle/sqlldr/log/hebei_yd/hb_yd_sms_content.bad'
DISCARDFILE '/u/oracle/sqlldr/log/hebei_yd/hb_yd_sms_content.dsc'
INTO TABLE "ETL"."HB_YD_SMS_CONTENT"
TRUNCATE
FIELDS TERMINATED BY ','
TRAILING NULLCOLS
(sms_id,
category_id,
areas_id,
sms_type,
content char(20000)
)
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16566331/viewspace-683234/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/16566331/viewspace-683234/