LOAD DATAINFILE 'EDS.TW_BUSS_GN_CELLFLUX_HR4.csv' "str '\r\n'"APPEND INTO TABLE EDS.TW_BUSS_GN_CELLFLUX_HR_TEST FIELDS TERMINATED BY ',' TRAILING NULLCOLS ( DATE_CD , HR_CD , LAC_ID , CELL_ID , BUSI_TYP1_CD , BUSI_TYP2_CD , CITY_ID , CELL_NAM , UP_FLUX , DOWN_FLUX , VSD_CNT , CI )
ERROR 6 数据文件请见附件TEST.csv,数据文件中某个字段的值内部有换行符,加载数据时,想保持数据原样,即数据入库后,数据里面保存有换行。此时可以通过"str '\r\n'"解决问题。
如下所示,数据文件TEST.csv只有两行数据,每一条记录中第二个字段都存在换行。
12,"这仅仅是
测试"
14,"数据有
换行"
LOAD DATA INFILE 'TEST.csv' "str '\r\n'" APPEND INTO TABLE TEST FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS ( ID , NAME )
ERROR 7 : 字段长度超过255
SQLLDR默认输入的字段长度为255个字符。如果某个字段的字符长度超过255,而且你在控制文件里面,没有指定其字符长度,则会报下面错误:SQL Loader- Field in data file exceeds maximum length
ERROR 8 : SQL*Loader-510 & SQL*Loader-2026
这个是我遇到的一个特殊例子,SQLLDR装载日志错误如下:
SQL*Loader-510: Physical record in data file (/jkfile/DAD_CDR/TEMP/201207/EDS.TW_CUST_COSTCELL_HR_07.dat) is longer than the maximum (20971520) SQL*Loader-2026: the load was aborted because SQL Loader cannot continue.
因为这个EDS.TW_CUST_COSTCELL_HR_07.dat文件37G,刚开始搜索了很多资料,也没有解决问题,其实最后发现时数据文件FTP拷贝传送时损坏的缘故。
ERROR 9:SQL*Loader-605 & ORA-01653
ORA-01653: unable to extend table tablename by 128 in tablespace xxxx SQL*Loader-605: Non-data dependent ORACLE error occurred -- load discontinued.
出现这个错误是因为表所在表空间无法扩展,导致SQL*LOADER装载数据无法插入。要给用户对应的表空间扩展空间
更多SQL内容来自木庄网络博客