使用 SSIS 2008 批量插入多个 XML 文件

Posted

技术标签:

【中文标题】使用 SSIS 2008 批量插入多个 XML 文件【英文标题】:Bulk Insert Multiple XML files with SSIS 2008 【发布时间】:2010-06-03 21:19:06 【问题描述】:

我有一个包含多个 XML 文件的文件夹。我需要将每一个批量插入到 sql server 中的表中。因为我是 SSIS 的新手,所以我完全不知道如何让它工作。

目前,我的 SSIS 包从 FTP 服务器中提取文件并使用命令行解压缩 xml(以 .xml.gz 形式出现)。这一切都很好,但现在我无法将文件放入数据库,因为批量插入任务只需要分隔文件。

建议?

【问题讨论】:

【参考方案1】:

您可以通过使用带有枚举器类型文件的ForEach Loop Container 来完成此操作。如果 XML 文件很复杂,您可以使用XML Task。否则,使用带有XML Source 的数据流。

如果您选择这样做,下面的article 解释了如何使用 XML 源。

【讨论】:

【参考方案2】:

流程中有一个不明显的步骤。当您设置 For-Each 并将文件分配给变量(IE:User::InputFile)时,如果您尝试在 XML 源(来自变量的 XML 文件)中使用它,它会给您一个错误提示无法读取变量。

它不能。您必须通过在变量选项卡中手动将示例(工作)文件地址输入到将提供地址的变量(IE:User::Inputfile)来启动泵。

执行此操作,您将进入列选项卡,您可以在其中完成对 for-each 循环的使用。

【讨论】:

以上是关于使用 SSIS 2008 批量插入多个 XML 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 SSIS 将多个表中的数据插入到多个表中?

SSIS - 批量插入每批有多少行可供选择?

SSIS一次将具有起始范围的递增ID插入多个表中

SQLXML 4 - 批量插入 xml 数据

SQL server 2008中使用SSIS从一个数据库导入数据到另一个数据库,[SQL Server 目标 [22]] 错误: 无法准备 S

SSIS - 插入大量行(数亿行)的最佳方法