【问题标题】:SSIS Derived Column Missing DownstreamSSIS 派生列缺少下游
【发布时间】:2009-03-12 15:23:14
【问题描述】:
我创建了一个派生列,将 1 转换为“M”,将 2 转换为“F”。即性别指标。派生列馈入模糊查找转换,然后馈入条件拆分。问题是派生字段没有出现在任何下游组件中。在模糊查找转换中,派生列的“通过”复选框被选中,但在以下条件拆分转换中,该列根本不显示。有趣的是,_Similarity_Gender_Derived 确实出现在条件拆分的列列表中。
希望其他人看到过这种行为。
谢谢 - 多先生
【问题讨论】:
标签:
sql
sql-server-2005
ssis
【解决方案1】:
- 右键单击 Fuzzy Lookup 任务并选择 Show Advanced Editor。
- 转到“输入和输出属性”选项卡。
- 展开“输出”项,然后展开“输出列”项。
- 那里是否列出了您的派生列?
如果是,它也应该显示在 Conditional Split 任务的可用输入列上。如果不是...
- 右键单击派生列任务并选择显示高级编辑器。
- 转到“输入和输出属性”选项卡。
- 展开“Derived Column Output”项,然后展开“Output Columns”项,然后选择您的派生性别列。
- 注意它的 LineageID 属性。
- 重复前面的步骤以获得模糊查找的输出列。
- 点击“添加列”按钮。将该列命名为与派生列相同的名称,并在“SourceInputColumnLineageID”属性中输入您之前记下的 LineageID。
替代答案:您的派生列是创建一个全新的列,还是只是替换您现有的“1/2”列?在派生列编辑器中,检查您的“派生列”.. umm .. 列。如果您只是用新值替换现有列(而不是添加新列),您可能只是找错地方了。
【解决方案2】:
感谢您的回复。事实证明,该问题与元数据的某些损坏有关。我最终回到派生列转换,错误地重命名了列,然后用旧名称添加了一个新的派生列。我保存了转换,然后删除了原始列。这解决了问题。
感谢您的回复。
【解决方案3】:
您是否将派生列添加到现有的转换链中?
如果您这样做了,那么很有可能将队列更靠后的转换之一设置为不传递这个新派生的列。检查下面的所有转换,并确保您的派生列设置为通过。