我是很新,SSIS,我運行到哪裏我使用的是SQL語句中的OLE DB源的步驟來拉我的數據是一個問題,這個數據包含5個DATETIME字段需要進行轉換,並且所有數據都將進入平面文件。SSIS日期爲字符串轉換錯誤
我做的轉換在SQL就像這樣:
REPLACE(CONVERT(VARCHAR(10), birthdate, 101), '/', '') AS 'Date of Birth (MMDDYYYY)
在SSIS平面文件連接管理我的數據類型爲字符串[DT_STR]我OutputColumnWidth爲8。這在SSIS不工作截斷,如上面的轉換創建一個8個字符的varchar。如果我嘗試轉換爲varchar(8),它會截斷sql server management studio中的數據。
我的問題是,我的下一個轉換的嘗試失敗。這裏的SQL代碼:
REPLACE(CONVERT(VARCHAR(10), exp_date, 103), '/', '') AS 'Expiration Date
我得到以下錯誤:「值不能因爲一個潛在的數據丟失的轉換」,即使一切都已經複製了相同的設置。該轉換將日期轉換爲'DDMMYYYY
'格式。
我從研究,這是一個數據轉換錯誤知道,但我不知道怎麼去解決它尤其是第一次轉換正常工作。
有趣的是,當我重定向錯誤的行不同的平面文件的日期被拉進去並轉換沒有問題的。
我在這裏損失,並希望從該組中的任何幫助。
任何理由的時候,爲什麼你使用「101」 MM/DD/YYYY爲第一,第二格式和「103」 DD/MM/YYYY格式? (不是那會導致問題!) –
這就是平面文件發送到的部門所要求的。我正在將在Power Builder上運行多年(不是我自己)的自動報告轉換爲SSIS,這是原始格式。 – kdejarnet
EXP_DATE什麼數據類型 – Justin