使用单个DFT加载SSIS多个表

时间:2015-02-04 10:01:30

标签: sql ssis

我是SSIS的新手。我正在尝试将多个源表从我的临时数据库加载到数据仓库中的相应目标表。 所有源表都有不同的列数。 我有100个SSIS包100个源表和100个目标表。 我想制作单个SSIS包,使用单个DFT加载所有100个表。 我有一个电影aster表,其中包含源表和目标表名称的列表,输入将是文件名,在文件名的基础上我的DFT将获取源和目标表并在运行时使用变量更改源和目​​标表时间动态。 请就上述问题提出一些建议 问候, Vipin Jha

2 个答案:

答案 0 :(得分:1)

DFT不是动态的 - 他们期望在设计时针对源和目标的某个模式。如果架构与设计时的架构有所不同,那么当您尝试执行该程序包时,将会抛出验证错误。

您可以继续使用BIML生成具有适当模式的数据流和包:http://www.mssqltips.com/sqlservertip/3094/introduction-to-business-intelligence-markup-language-biml-for-ssis/

但是,我也会考虑缩小您从源头提取的内容。数据仓库不是生产的副本。事实上,您通常只需要源系统中20%的内容来形成一个强大的维度模型,专为报告需求而设计。

我会花时间减少不需要的表和列,数据分析任务对于此评估工作非常有用。最后,您将拥有一个更易于管理且性能更好的ETL。

答案 1 :(得分:0)

您可以使用连接管理器的连接字符串属性在运行时动态设置表名。