在表达式生成器 SSIS 2019 中将日期时间转换为字符串

Posted

技术标签:

【中文标题】在表达式生成器 SSIS 2019 中将日期时间转换为字符串【英文标题】:Convert datetime to string in expression builder SSIS 2019 【发布时间】:2020-07-07 13:50:32 【问题描述】:

我遇到了一个奇怪的问题,从 VS2015 移动到 2019。我有一个像这样设置的变量;

 SUBSTRING( (DT_STR,50, 1256)DATEADD("DAY",0,GETDATE()) , 1, 10)

这在 VS2015 中完美运行,但现在当我尝试在项目中添加相同的代码时,它返回“无法将 'System.String' 转换为 'System.DateTime'。”

有人知道吗?

【问题讨论】:

【参考方案1】:

你可以用c#

DateTime.Now.ToString("MM/dd/yyyy");

此链接包含所有版本:

https://www.c-sharpcorner.com/blogs/date-and-time-format-in-c-sharp-programming1

【讨论】:

可以,但不在表达式生成器中。 用表达式写出来真是让人头疼。这就是为什么我给了你一个简单的脚本任务来完成它。您需要在 getdate() 中添加日期部分才能在表达式中执行此操作。 好的,但事实仍然存在,为什么它在VS2015中可以完美运行,而在VS2019中却不行... @KeithL,如何在脚本表达式中解析它以用作表达式生成器中的变量?

以上是关于在表达式生成器 SSIS 2019 中将日期时间转换为字符串的主要内容,如果未能解决你的问题,请参考以下文章

用于添加时间到日期的 ssis 表达式

在 SSIS 中将 varchar 数据类型转换为日期时间

如何在 SSIS 中将 Y2K 日期转换为 SQL 日期?

在 SSIS 派生列中将字符串转换为日期

SSIS:将纪元列转换为日期

在 SSIS 中将日期 DD.MM.YYYY hh:mm:ss 转换为 YYYY-MM-DD