SSIS派生列缺少下游

时间:2009-03-12 15:23:15

标签: sql sql-server-2005 ssis

我创建了一个派生列,将1转换为'M',将2转换为'F'。即性别指标。派生列将进入模糊查找转换,然后进入条件拆分。问题是派生字段不会出现在任何下游组件中。在模糊查找转换中,将检查派生列的“直通”复选框,但在以下条件拆分转换中,列根本不显示。有趣的是_Similarity_Gender_Derived确实显示在条件拆分的列列表中。

希望其他人看到过这种行为。

谢谢 - Do先生

3 个答案:

答案 0 :(得分:3)

  1. 右键单击模糊查找任务,然后选择显示高级编辑器。
  2. 转到“输入和输出属性”选项卡。
  3. 展开“输出”项,然后展开“输出列”项。
  4. 您的派生列是否列在那里?
  5. 如果是,它还应显示在条件分割任务的可用输入列上。如果不是......

    1. 右键单击Derived Column任务,然后选择Show Advanced Editor。
    2. 转到“输入和输出属性”选项卡。
    3. 展开“派生列输出”项,然后展开“输出列”项,并选择派生的性别列。
    4. 请注意其LineageID属性。
    5. 重复前面的步骤以获取模糊查找的输出列。
    6. 点击“添加列”按钮。将列命名为与派生列相同的名称,并在“SourceInputColumnLineageID”属性中输入您之前记录的LineageID。
    7. 备用答案:您的派生列是创建全新列,还是只是替换现有的“1/2”列?在派生列编辑器中,检查“派生列”.. umm ..列。如果您只是用新值替换现有列(而不是添加新列),您可能只是在错误的位置。

答案 1 :(得分:1)

感谢您的回复。事实证明,该问题与元数据的某些损坏有关。我最终回到Derived Column Transform,错误地重命名了该列,然后添加了一个带有旧名称的新派生列。我保存了转换,然后删除了原始列。这解决了问题。

感谢您的回复。

答案 2 :(得分:0)

您是否已将派生列添加到已存在的转换链中?

如果你这样做,那么队列中的其中一个变换很可能被设置为不传递这个新派生的列。检查下面的所有变换,并确保将派生列设置为通过。