SSIS - 基于查找表提取多个数据库

时间:2013-06-26 16:57:41

标签: sql ssis lookup extraction

如何基于查找表(也在另一台服务器上找到)创建一个从另一台服务器中提取多个数据库(以及每个数据库中的所有表)的包,其中包含我需要提取的所有数据库的列上市?

我需要使用查找表,因为源上会不时创建新数据库,所以我不能只创建一个将数据库的“静态集”提取到目标的作业。它需要有点动态......

此外,我还需要提取数据库增量,我可以使用所有数据库/表中存在的时间戳。

我是SSIS的新手,所以一个“简单”的指南会受到关注。

由于

1 个答案:

答案 0 :(得分:0)

作为一个粗略的想法,您可以使用SSIS包配置并从包中执行包,然后使用传输SQL Server对象任务:

  • 制作一个“主程序包”,用于遍历查找表中的列。
  • 对于每个条目,它应相应地更新第二个SSIS包的Package Config条目。对第二个包使用“SQL Server”配置。
  • 然后主程序包应该执行第二个程序包 - 还有一个任务。
  • 第二个包查看其配置,找出从哪个服务器获取数据库,并使用Transfer SQL Server Objects Task来执行此操作。
  • 然后Main包继续查找表中的下一个条目。

理想情况下,您希望在SQL Server的MSDB中使用“第二个SSIS包”而不是文件系统。它更容易执行。