我正在研究从配置表中读取详细信息并将详细信息传递给包的工作流程。有问题的包正在根据作为参数传递的文件名(从静态数据库表中读取)将 CSV 加载到数据库中。
我有骨头工作,我只是不明白如何正确配置目标包中的参数以正确使用它。
在我的调用过程中,我设置参数并执行包如下
....
EXEC CATALOG.set_execution_parameter_value @ExecutionID
,@object_type = 30 -- (30 is package param!)
,@parameter_name = N'Parameter1'
,@parameter_value = @Parameter1
EXEC CATALOG.start_execution @ExecutionID
object_type 似乎有 3 个用于项目、包或执行参数的选项......
在我的目标包中,我将Parameter1定义为包参数(在包设计的参数选项卡中列出
我已经配置了“平面文件源”并且连接管理器属性-> 表达式,我将 ConnectionString 覆盖设置为 @[Package::Parameter1],这似乎不起作用。
谢谢。
.. 更新。从 execution_parameter_values 视图中,我突出显示了传递给包的内容:-
param_idexe_id|object_t|param_t|Parameter_name|parameter_value
3492|10184|20|String|Parameter1|
3493|10184|30|String|Parameter1|c:\abc.csv
3494|10184|30|String|CM.BLACKBEAST-II.StagingDB.ConnectionString|数据源=BLACKBEAST-II;初始目录=StagingDB;提供者=SQLNCLI11。 1;集成安全=SSPI;自动翻译=假;