2010-10-20 57 views
0

我得到一個輸入CSV文件,我必須上傳到我的oracle數據庫。轉換SSIS中的數據類型

下面是一些示例數據

ContractId, Date, HourEnding, ReconciledAmount 
13860,"01-mar-2010",1,-.003 
13860,"01-mar-2010",2,.923 
13860,"01-mar-2010",3,2.542 

我不得不進入的列DB_TIMESTAMP轉換(以匹配目標表中的結構)。

但是當我使用Data Conversion轉換,我得到一個錯誤

Data conversion failed while converting column "Date" (126) to column "Date" (496). The conversion returned status value 2 and status text "The value could not be converted because of a potential loss of data.

我應該怎麼做才能夠正確地轉換這些數據?

回答

4

在這種情況下您可以做的是將Flat File連接中的Text Qualifer更改爲單個雙引號(」)。

這將導致SSIS到interperet

13860,"01-mar-2010",1,-.003 

13860,01-mar-2010,1,-.003 

這也具有能夠捕捉任何嵌入的逗號您的數據,如果他們也帶有引號的Qualfied額外的獎勵。

2

的問題是帶引號[]在文件中。 你應該從文件中Data Conversion組件之前將其刪除或添加Derived Column刪除與表達

REPLACE ([TextDateColumn],「\」「,」「)