SSIS:字符串(varchar)转换为日期

时间:2019-05-28 07:26:55

标签: ssis

我需要在SSIS上实现日期格式 yyyy-mm-dd 转换

我尝试了以下代码,但始终出现错误:

year and posting_period is a varchar(50) on my source data.

在我的源上采样数据

= 2014

posting_period =始终为2位数字

我在下面的代码中错过了什么?

(DT_DBDATE)((DT_WSTR,4)year + "-" + (DT_WSTR,2)posting_period + "-" + "01")

1 个答案:

答案 0 :(得分:0)

您需要将变量的数据类型设置为datetime;将字符串封装在括号中;并将其投射为DT_DATE:

(DT_DATE)(@[User::Year] + "-" + @[User::posting_period] + "-01")

据我所知,您无法指定日期时间的显示方式。因此,这将评估为MM / DD / YYYY,这很好。您不必担心日期在数据库中的格式。您只需要关心报告工具中的显示方式,通常可以通过多种方式转换或投射日期。