1

所以,我创建了一个数据类型为 datetime 的变量“batch”。现在我的 OLEBD 源有一个列“addDate”,例如 2012-05-18 11:11:17.470,所以要填充的空目标也是如此。

现在这个列 addDate 有很多日期,我想复制所有日期“2012-05-18 11:11:17.470”

当我将变量的值作为该日期时,它会自动更改为 mm/dd/yyyy hh;mm AM 格式,因此在我的条件拆分转换中,它无法将日期与变量匹配,因此没有记录被复制到目的地!!

问题究竟出在哪里?

谢谢!

4

2 回答 2

0

我遇到了这个问题,我发现的最佳解决方案不是“漂亮”。基本上,您需要将变量的“表达式”和“评估为表达式”更改为 true(否则它将忽略表达式上的值)。

秘密是(也是我说这不是一个很好的解决方案的原因)创建第二个变量来评估第一个变量的表达式,因为您不能根据表达式更改变量的值。

因此,假设您的变量名为“DateVariable”并且您有23/05/2012,例如创建一个名为“DateVar2”的变量并将其表达式设置为

(DT_WSTR,4)YEAR(@[User::DateVariable]) + "/"+RIGHT("0" + (DT_WSTR,2)MONTH(@[User::DateVariable]),2) + "/" + RIGHT ("0" + (DT_WSTR,2)DAY(@[User::DateVariable]),2)

那会给你2012/05/23

继续以您想要的格式获取日期

于 2012-05-23T08:50:22.540 回答
0

我找到了更简单的解决方案。选择数据类型为字符串。输入任何所需的值。在条件拆分之前,需要进行数据转换转换。将其转换为 DT_DBTIMESTAMP 然后运行包。

有用!

于 2012-05-23T21:42:56.087 回答