使用SSIS将列记录从.CSV导出到SQL Server中的多个表

时间:2018-08-22 20:03:44

标签: sql-server csv ssis

我需要使用SSIS软件包创建批处理解决方案。

我是SSIS的新手,因此请进行探索以实现我的方案。

场景:

  1. 外部系统每周将数据转储到.CSV文件中 服务器上的特定目录。
  2. SSIS软件包将安排每周运行以阅读 服务器上的.CSV文件路径,并将这些数据写入多个表中 在SQL Server中。

任务: 具有列集的源.CSV文件属于SQL Server中的不同表。该行中的那些列和数据应映射到不同表中的特定列。

我想问社区-

  1. SSIS提供了哪些替代方案,使我可以将每个方案分开 .CSV文件中的列并将其映射到SQL Server中的其他表?
  2. 在.CSV中,我有11列。按照SQL表结构, 十一列分布在四个单独的表中。

对于执行该解决方案的任何有效建议,我深表感谢。

更新:到目前为止,我已经设置/尝试以下操作

  1. 我成功创建了新的SSI程序包。在数据流方面 源,我设置了变量以读取路径和文件名。
  2. 我将OLE DB数据源设置为目标并建立与 服务器。
  3. 我相信我已经完成了以.CSV为源的设置 阅读专栏,但我仍在探索什么是理想的 目标或OLE DB如何帮助使用不同的记录 表。
  4. 我经历了MulticastImport Columns选项。一世 了解Multicast主要用于共享或输出 数据发送到不同的目的地。

1 个答案:

答案 0 :(得分:0)

您可以创建四个OLE DB目标,并使用多播可以路由数据。 因此,基本上,多播会将所有11个表都传递到所有四个目的地,在那里您只能在表中映射所需的列。 让我知道您是否有任何困惑。