2013-10-16 66 views
1

我有一個CSV文件,該文件包含emp32加密日期的&文件。 CSV文件中的所有文本均爲中文。 例SSIS:從CSV文件中讀取中文日期並插入到SQL表中

中國上汽,2008年12月18日 
中國石油,2008年12月18日 

我想讀這個日期欄和使用SSIS包將其插入到SQL表。 我得到以下錯誤消息

[OLE DB Destination [9]] Error: There was an error with input column "工資結束期" (85) on input "OLE DB Destination Input" (22). 
The column status returned was: "The value could not be converted because of a potential loss of data.". 
+0

錯誤位於Destination元素上,顯示sql表中的列和大小的類型以及工資結束期列的數據類型和大小。我的猜測是,你試圖插入較小的SQL表列中更大的大小列... – Justin

回答

0

我的猜測是,你在較小的SQL表列中插入嘗試更大尺寸列。如果是的話你有2種選擇:

  1. 做大SQL表列
  2. 從CSV文件做更小的列。

第二個選項,你可以做插入「出列」元素,並與舊列串添加新列(像這樣):

SUBSTRING(工資結束期, 1, 22) 

編輯

您可以使用派生列元素日期:

(DT_DBDATE)(SUBSTRING("2008年12月18日",1,4) +"-"+ SUBSTRING("2008年12月18日",6,2) 
+ "-" + SUBSTRING("2008年12月18日",8,2)) 

只是改變"2008年12月18日"到你的專欄。

相關問題