通过使用ssis作为ETL工具,将数据从登台加载到日期列的目标时,我感到很困惑。 分期:
varchar (datatype)-'09/05/2017'
目标:
转换转换用于转换为date datatype.Now记录之类的
09/05/2017
。
但是加载到final table时,Record就像2017-09-05 00:00:00
,它是datetime数据类型。
实际预期结果:2017-05-09 00:00:00
注意:插入的其他记录格式正确。
答案 0 :(得分:2)
在SSIS中 - DataFlow组件的LocaleID
属性处理日期是否已解析为MM/DD/YYYY
或DD/MM/YYYY
。
在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中的设置。必要时调整。