1

有没有办法自动生成 SSIS 包?我需要创建很多 SSIS 包,它们只是从一个表中删除数据并从文本文件中导入数据。文件名与表名匹配,列标题位于文件的第一行。

如需更多详细信息:

  • 我正在开展一个项目,在该项目中,我必须分离当前耦合的两个系统(一个系统可以直接访问另一个系统的数据库)。修改后,一个系统将通过txt文件提供数据,加载到另一个数据库中。
  • 我们必须使用 SSIS 将数据从文本文件加载到数据库中。
  • 文本文件将以 CSV 格式提供,第一行包含列标题。
  • 两个数据库中的表具有匹配的列名,我们需要做的就是清除表并从文件中加载数据。

我有一百多个不同列数的表。我需要手动创建每个包吗?

4

2 回答 2

2

我熟悉 2 个免费选项。

  • 如果您是 .NET 重度商店或只是想对 API 进行探索, EzAPI可能是一个好地方。这种方法允许您控制几乎整个包的生成,但以编码时间为代价。我发现 EzAPI 通常比使用 SSIS 的基本 COM/.NET 库更容易。

  • Biml是一个有趣的野兽。Varigence 很乐意向您出售 Mist 的许可证,但这不是必需的。您只需要BIDSHelper,然后浏览BimlScript并寻找与您的需求相近的配方。完成后,单击 BIDSHelper 中的上下文相关菜单按钮并嗖嗖作响,它会生成包。

于 2012-12-10T21:32:40.397 回答
0

我只是使用 vb 来做到这一点的,我将表名作为命令参数传递,并使用 vb 生成插入和清除,发挥了作用……我明天回到办公室时可以尝试将其挖掘出来,但是这很简单。似乎没有任何其他方式可以说“只需获取 x 并导出它”,“只需获取 y 并将其导入 z”,所以它必须是 vb。实际上想起来我想我实际上使用了一个小的 xml 文件来传递表信息以进行导出,然后从 csv 文件名中确定要导入的表名。需要明确的是,这只是一个包,但它可以动态选择它所做的导入/导出数量。进一步澄清这是 ssis 中的 vb 作为处理步骤

于 2012-12-10T21:42:35.417 回答