【发布时间】:2017-03-20 06:51:00
【问题描述】:
我想根据各种包的配置动态调用SSIS包。我已经在集成服务目录上部署了 SSIS 2012 解决方案。
在运行时,我有包名,但无法从集成目录设置 SSIS 包的路径。我可以从文件位置执行此操作,但由于我使用的是 2012,因此需要使用集成服务。
【问题讨论】:
标签: sql-server ssis etl sql-server-data-tools ssis-2012
我想根据各种包的配置动态调用SSIS包。我已经在集成服务目录上部署了 SSIS 2012 解决方案。
在运行时,我有包名,但无法从集成目录设置 SSIS 包的路径。我可以从文件位置执行此操作,但由于我使用的是 2012,因此需要使用集成服务。
【问题讨论】:
标签: sql-server ssis etl sql-server-data-tools ssis-2012
假设:
这些软件包位于以下目录中:
MSDB\MyPackages\Import\
包名存储在变量@[User::Variable]
解决方案
首先,创建一个OLEDB Connection manager 连接到与集成服务目录相关的SQL Server 实例。
添加执行包任务并将其配置为从 SQL Server 运行包,并使用您创建的连接。
在Execute Package Task 上(只需单击任务并按 F4 以显示属性选项卡) 转到表达式。
将包名表达式设置为:
"\\MyPackages\\Import\\" + @[User::Variable]
旁注:我假设所有包都存储在 MSDB\MyPackages\Import\ 中,否则您必须将完整路径存储在变量中
【讨论】: