我有一个SSIS包,它将数据从可以为Nullable的列复制到同一列不是Nullable的表。在使源不可为空时涉及繁文缛节,所以现在我需要一种方法将空值更改为空字符串。
我从ADO .Net Source获取数据,而不是我可以添加null检查的查询。如果需要,我可以切换到查询,然后在那时进行检查。在我这样做之前,我想看看是否存在允许我将Null切换为空字符串的SSIS转换(并且仍然使用相同的列)。
答案 0 :(得分:9)
使用 Derived Column
转换。然后,您将从派生列下拉列表中选择替换your_column_name
,然后使用以下代码填充表达式属性:
ISNULL( [your_column_name] ) ? " " : [your_column_name]
希望这有帮助。
答案 1 :(得分:3)
与此类似的东西可能会为您提供帮助。它实际上是执行反向操作的示例(从空字符串到NULL)但至少显示正在使用的条件运算符。
答案 2 :(得分:2)
可以使用SSIS 2012中的新功能REPLACENULL
。
REPLACENULL( [your_column_name], "" )
如果使用SSIS 2008,以前答案的ISNULL(...) ? ... : ...
是最佳解决方案。