我想根据各种包的配置动态调用SSIS包。我已在集成服务目录上部署了 SSIS 2012 解决方案。
在运行时,我有包名称,但无法从集成目录设置 SSIS 包的路径。我可以从文件位置执行此操作,但由于我使用的是 2012,因此需要使用集成服务。
最佳答案
您必须使用表达式来实现此目的。
示例
假设:
这些软件包位于以下目录中:
MSDB\MyPackages\Import\
包名称存储在变量
@[User::Variable]
中
解决方案
首先,创建一个 OLEDB 连接管理器
以连接到与 Integration Services Catalog 相关的 SQL Server 实例。
添加执行包任务并将其配置为从 SQL Server 运行包,并使用您创建的连接。
在执行包任务
(只需单击任务并按 F4 显示属性选项卡)转到表达式。
将包名称表达式设置为:
"\\MyPackages\\Import\\" + @[User::Variable]
旁注:我假设所有包都存储在 MSDB\MyPackages\Import\
中,否则您必须将完整路径存储在变量中
关于sql-server - 在 SSIS 2012 中的集成服务目录中设置 "Execute Package Task"中的包路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42897410/