Csv 我们是否可以比较多个输入文件的列以在SSIS中派生一个新列

Csv 我们是否可以比较多个输入文件的列以在SSIS中派生一个新列,csv,ssis,etl,flat-file,Csv,Ssis,Etl,Flat File,我正在尝试根据不同输入文件中提供的列创建派生列,但不幸的是,当我尝试将原始文件1映射到派生列时,我不断遇到错误。错误如下: 无法创建连接器。 目标组件没有任何可用于创建路径的输入 我的目标是能够将原始文件和映射文件连接到派生列中,并生成一个新列 如果有人能给我任何建议那就太好了 我有源文件和参考文件都是平面文件。我的源文件有a列、b列和c列,而我的引用文件有d列、e列和f列 如果a列=d列,b列=f列,那么我想将c列填充为与f列相同的值。如何在SSIS中进行此类分析或查找 您的问题不清楚,我将尝

我正在尝试根据不同输入文件中提供的列创建派生列,但不幸的是,当我尝试将原始文件1映射到派生列时,我不断遇到错误。错误如下:

无法创建连接器。 目标组件没有任何可用于创建路径的输入

我的目标是能够将原始文件和映射文件连接到派生列中,并生成一个新列

如果有人能给我任何建议那就太好了

我有源文件和参考文件都是平面文件。我的源文件有a列、b列和c列,而我的引用文件有d列、e列和f列

如果a列=d列,b列=f列,那么我想将c列填充为与f列相同的值。如何在SSIS中进行此类分析或查找


您的问题不清楚,我将尝试给出一些建议:

如果要使用派生列执行查找,请执行以下操作: 您可以使用缓存转换组件和缓存连接管理器来实现:

如果您希望合并两个输入: 然后需要使用“合并”“连接”或“联合所有组件”:


根据我补充到问题中的您的评论,您希望根据参考文件中的匹配数据来扩充现有数据

SSIS包的核心如下所示

在第一个数据流中,我们将从map_文件_1获取数据源,并加载到一个“原始”文件中

我像这样配置我的原始文件目标

当包运行时,它将用引用数据填充特殊格式的文件。这很重要,因为您可以使用数据库或原始文件作为查找源

我们终于开始工作了!查找组件的平面文件源。在该查找的第一个选项卡中,确保将连接类型从默认的“OLE DB连接管理器”更改为“缓存连接管理器”

在连接选项卡中,单击以创建新CCM并使用在上一步骤中生成的原始文件

将A列映射到D列,B列映射到E列(假设数据类型匹配)。单击F列上的复选框,并在
查找操作
部分中,将C替换为该值

最后的想法 这将是区分大小写的查找。如果引用文件中没有匹配项,它就会爆炸。这可能不是您想要的,因此请将查找转换配置为不执行此操作;)


我在博客中写道,如果您需要更多单词,请使用Excel填充缓存

帮助我了解您在这里要做什么。您有一个源文件和一个参考文件。对于源中的值,是否要与引用/映射文件匹配,并向工作流程中添加其他数据?示例将极大地改进这个问题(单击编辑按钮)。很难理解您想要做什么。如果你展示一些基本的样本数据,我肯定会有所帮助。@billinkc你知道了。是的,我的源文件和参考文件都是平面文件。我的源文件有a列、b列和c列,我的参考文件有d列、e列和f列。如果a列=d列,b列=f列,那么我想将c列填充为与f列相同的值。我怎样才能在SSIS中进行这种分析或查找?希望这可以解释。@Nick.McDermaid我刚才在上面的评论中解释了这个问题。希望这能解释问题。非常感谢这是有用的信息。今晚我将尝试这个选项,看看这是否能解决我的问题。