SQLLoader ORA-01722 invalid number

wpgy發表於2019-10-06

用 SQLLoader 載入資料提示 (最後一列)是無效數字,其實不是資料的問題,而是換行符導致的,去掉換行符就好了。
注意,使用了兩層
replace 函式,這裡的換行符包括 換行和回車
CHR(10):換行
CHR(13):回車


修改完成的控制檔案內容如下:
load data
infile './dataset_2009_2016.txt'
insert into table DATASET_1999_2016
fields  terminated by ' ' TRAILING NULLCOLS
(
    DATE_TIME date 'YYYY-MM-DD HH24:MI',
    STOCK_TYPE,
    STOCK_CODE,
    OPEN,
    HIGH,
    LOW,
    CLOSE,
    VOLUME,
    AMT "replace(replace(:AMT, CHR(13),  ''),  CHR(10),  '')"
)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31560527/viewspace-2658907/,如需轉載,請註明出處,否則將追究法律責任。

相關文章