2016-03-23 38 views
0

當我有小數場在我的記錄中的最後一個值通過SQL Loader來加載數據,我不能將其加載到使用SQL裝載機的表。我正在LINUX OS和Oracle 12C上做這件事。無法如果小數點是在最後一列

以下是我的.ctl文件中的代碼。

OPTIONS (SILENT=(HEADER,FEEDBACK),ERRORS=0) 
LOAD DATA 
TRUNCATE INTO TABLE STG_HIST_VSPT 
FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"' 
TRAILING NULLCOLS 
(
col1, 
col2, 
col3, 
STARTDATE DATE 'DD-MM-YYYY', 
QTY 
) 

以下是數據如何在文件中。

6106|#CLIENTE SIN ASIGNAR#|399_8|31-12-2012|0.022500 
6254|#CLIENTE SIN ASIGNAR#|399_8|21-01-2013|0.082500 
6254|#CLIENTE SIN ASIGNAR#|399_8|04-03-2013|0.180000 

以下是我在日誌文件中看到的錯誤。 記錄1:被拒絕 - 表格STG_HIST_VSPT,列數量錯誤。 ORA-01722:無效數字

有人可以讓我知道這裏有什麼問題嗎?如果我自己創建一個文件,我可以加載它,但是從另一個系統收到的這個文件不允許我加載!

回答

0

通過添加'TERMINATED BY WHITESPACE',我能夠成功加載文件。

相關問題