SSIS在数据旅程中所做的奇怪事情

时间:2016-07-06 11:29:15

标签: sql-server ssis

在执行sql任务中。我有一个名为LastEditedBY的列,它是源系统1中的varchar。在执行Sql任务中,我所做的只是:

Select cast ( LastEditedBy as INT) from Table1

此刻为空的所有值。然后我将它存储在INT类型的变量中,称为LastEditedBy。

然后我在第二个Execute Sql Task中运行一个存储过程以插入到Source System 2中,这需要输入为INT数据类型。

通过Watch Window在SSIS中观察,它取一个null并将变量设置为0而不是'',空字符串。

这是缺陷吗?我怎样才能确保为null而不是0,我得到一个''?

1 个答案:

答案 0 :(得分:1)

SSIS中的INT变量会将NULL转换为零,在您的情况下我建议将变量声明为字符串并在稍后阶段(可能在SP中)转换为INT。