SSIS脚本组件,允许空值

use*_*943 5 null ssis bids sql-server-2008

我有一个我编程的SSIS包,我的脚本组件不允许空列输入.我已经选中了该框以保持平面文件源组件中的空值.我的程序运行良好,直到我的脚本组件,我得到错误"列有一个空值"(超级模糊,我知道).当前抛出错误的列是一个"int"值列,用于我的脚本中的聚合.

我可以使空值为0或说"NULL",但我更愿意将它们留空.

我正在使用SQL Server BIDS 2008.

Kyl*_*ale 8

因为SSIS处理数据库太多并且不想花费大量时间来区分DB NULL和C#NULL,所以它们使用命名约定(columnname)_IsNull为Buffer中的每个输入列创建布尔属性.您可以在MSDN上阅读更多相关信息.

因此,您必须使用这些缓冲区列来确定值是否为null,然后执行您尝试对组件中的该列执行的任何操作.

所以像

if (!Row.MyColumn_IsNull) { 
//do something }
else {
//do something else, or nothing, etc.
}
Run Code Online (Sandbox Code Playgroud)