【问题标题】:SSIS 2008 Column has a null valueSSIS 2008 列具有空值
【发布时间】:2011-08-10 16:06:30
【问题描述】:

我目前正在开发一个 SSIS 包,我们正在将其从 SSIS 2005 迁移到 SSIS 2008。

问题在于当前版本的开发人员使用了这样一个事实,即在 SSIS 2005 中,NULL 列的访问器返回 0,而 SSIS 2008 会引发异常。

此外,他们还广泛使用以下表达方式:

IIf(Row.X_IsNull, System.DBNull.Value, Row.X)

问题是在SSIS 2008中,无论条件是否设置为真,程序仍然会尝试读取Row.X并抛出异常。

包很大,将所有这些 IIf 转换为带有临时变量的手动 If 需要很长时间。

任何帮助将不胜感激,

下午

【问题讨论】:

  • 你是什么意思访问者什么上下文?您是在严格地说脚本组件吗?我确定我知道您在说什么,但需要更多信息。
  • 您是否可以更改源查询以返回默认值而不是 NULL?这可能比找到所有失败的地方要快。

标签: vb.net ssis migration


【解决方案1】:

将包保存为文件。这是一个 XML 文件。在文本编辑器中找到您要更改的代码,然后提取相关部分以供以后搜索。在 BIDS 中,进行第一次修复并重新保存文件。然后,您可以在文本编辑器中打开该文件并找到问题的其他实例(您知道从您对早期文件的阅读中了解要查找的内容)并用您在文件中生成的相同类型的代码替换它们。保存,然后在 BIDS 中打开并测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多