2017-08-09 28 views
0

使用ssis作爲ETL工具將日期列的數據從分段加載到目標時,我感到困惑。 分期:SSIS - 日期轉換日期格式化MM/DD/YYYY或DD/MM/YYYY

varchar (datatype)-'09/05/2017' 

目標: 轉換變換用於轉換爲日期datatype.Now記錄,如 09/05/2017。 但是,當加載到最終表記錄像是2017-09-05 00:00:00這是datetime數據類型。

實際預期的結果:2017-05-09 00:00:00

注:其他記錄插入正確的格式。

+1

[SQL Server解析時使用的默認文化]的可能重複(https://stackoverflow.com/questions/45508704/default-culture-used-by-sql-server-for-parsing) – Tanner

回答

2

在SSIS中 - 您的DataFlow組件的LocaleID屬性處理是否將日期解析爲MM/DD/YYYYDD/MM/YYYY

enter image description here

在SQL - 類似的事情是由SET LANGUAGE命令處理。

SET LANGUAGE us_english 
DECLARE @d DATETIME = '1929/12/18' 

SET LANGUAGE british 
DECLARE @d DATETIME = '1929/12/18' -- fails 

在SQL和SSIS中檢查您的設置。如有必要調整。

+0

@thanks for the幫助特洛伊....我改變了設置,現在它工作正常.. – Ali