如何在进行转换时删除 SSIS 包中的特定列?

How to remove particular columns in SSIS package while doing transformation?

我想从我的平面文件中删除几列,因为我想使用 SSIS 加载到 SQL 服务器数据仓库中,我如何使用 SSIS 实现此转换,请参阅附件了解说明。例如我不想在我的转换中使用 %SalaryAddress

您可以按照以下步骤操作:

  1. 创建数据流任务
  2. 定义平面文件源并创建新的连接管理器并指向源文件。
  3. 使用您想要的 headers 创建空的平面文件。按照后续步骤定义平面文件目标并指向平面文件空目标。
  4. 右键单击“平面文件目标”,单击“编辑”。它将抛出一个弹出窗口,如下所示。单击 Yes

  1. 定义指向目标文件的新连接管理器。

  1. 现在,指向您的空目标文件。如果您转到“列”选项卡,将只显示特定的列。

  2. 现在,将平面文件源连接到平面文件目标。现在,只有特定的列将被映射,如下所示:

6.Now,您 运行 包,只会加载特定的列。

更新:抱歉。我将目的地误解为平面文件目的地。如果您将 SQL 服务器数据仓库作为目标,则需要执行以下步骤。

  1. 您可以在具有特定列的目标中创建 Table。
  2. 将平面文件源连接到 OLEDB 目标,如下所示:

  1. 映射应该只对特定的列进行。中间不需要特定的转换。

即使提供的方法可以正常工作,为什么您应该将所有无用的列加载到数据管道中以在最后忽略它们。 您只需在平面文件源编辑器中取消选中它们即可。