当日志里报多字节字符错误时,是因为文件的字符格式有问题,需要在ctl里添加characterset 'UTF8'就可以解决。
命令1
sqlldr keyan/oracle@bakdb control=D:\工作\汇总\testctl.ctl data=D:\工作\汇总\tbbr.txt log=D:\工作\汇总\sqlload\log2.log direct=y errors=999999
控制文件1
LOAD DATA
characterset 'UTF8'
INTO TABLE lt_data
APPEND
FIELDS TERMINATED BY ','
TRAILING NULLCOLS
(gmsfzhm,xm,fssj,khmc,zhmc,cxjg,zt "nvl(null,2)"
)
命令2
sqlldr keyan/oracle@bakdb control=D:\工作\汇总\testctl.ctl log=D:\工作\汇总\sqlload\log2.log direct=y errors=999999
控制文件2
LOAD DATA
characterset 'UTF8'
infile 'D:\lt\data1\上海日志_2008年01月_1.txt'
infile 'D:\lt\data1\上海日志_2008年02月_1.txt'
INTO TABLE lt_data
APPEND
FIELDS TERMINATED BY ','
TRAILING NULLCOLS
(gmsfzhm,xm,fssj,khmc,zhmc,cxjg,zt "nvl(null,1)"
)