SSIS:将生成的字符串转换为日期时间:DT_WSTR 到 DT_DBDATE

SSIS: convert generated string into datetime: DT_WSTR to DT_DBDATE

我有这个表达式 (DT_WSTR, 10)(year(getutcdate())-2)+"-01-01",结果是字符串 2018-01-01。 现在我想将该字符串转换为日期类型,但它抱怨我无法从 DT_WSTR 转换为 DT_DBDATE (或任何其他日期类型)

奇怪的是,如果我尝试使用 (DT_STR, 10,1252)(year(getutcdate())-2)+"-01-01"

,它会一直抱怨 WSTR

如何将生成的字符串转换为日期类型 DATE?

最终目标是让 2 年的 1 月 1 日回到 12:00:00 AM 由于我在具有不同日期设置的系统上工作,我更愿意避免使用 strings

知道了!

(DT_DATE)(DT_DBDATE)DATEADD("M",-MONTH(GETDATE())+1,DATEADD("D",-DAY(GETDATE())+1,DATEADD("YEAR",-2,GETUTCDATE())))