来自源的数据具有字符串数据类型并且有时具有无效日期,空列('')我想检查它是否是有效日期并将字符串转换为日期时间。我如何在 SSIS 中执行此操作?
我的字符串值已经格式化为 mm/dd/yyyy。
最佳答案
这是一个可以在派生列转换中使用的表达式,它将日期转换为 DT_DBTIMESTAMP 数据类型。或者,如果值为 null 或空白,它会将值设置为 null(使用 DT_DBTIMESTAMP 数据类型)。 DT_DBTIMESTAMP 数据类型匹配 SQL Server DATETIME 数据类型。
ISNULL(MyDate) || TRIM(MyDate) == "" ? NULL(DT_DBDATE) : (DT_DBDATE)MyDate
如果输入值不是有效日期,您可以将错误输出路径映射到另一个派生列转换,该转换将空值分配给该列。
关于sql - 在 SSIS 中将字符串转换为 DateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3547802/