SSIS Parameter用法


今天学习SSISParameter的用法,记录学习的过程。

Parameters能够在Project Deployment Model下使用,不能在Package Deployment Model使用。在Package Deployment Model下,使用Package Configurations来传递属性值;在Project Deployment Model下,使用Parameters来传递值。

1,Parameters and Package Deployment Model

In general, if you are deploying a package using the package deployment model, you should use configurations instead of parameters.

When you deploy a package that contains parameters using the package deployment model and then execute the package, the parameters are not called during execution. If the package contains package parameters and expressions within the package use the parameters, the resulting values are applied at runtime. If the package contains project parameters, the package execution may fail.

2,Parameters分为两个Level,Project Level 和 Package Level,这两个level的parameters value都存储在project files。

Project Parameters values and Packages parameters values are stored in configurations in the project file。

Integration Services (SSIS) parameters allow you to assign values to properties within packages at the time of package execution. You can createproject parametersat the project level andpackage parametersat the package level. Project parameters are used to supplyany external input the project receivesto one or more packages in the project. Package parameters allow you to modify package execution without having to edit and redeploy the package.

一,Package Parameter

1,在Project Deployment Model下,打开parameters选项卡,New一个Package Parameter,Parameter 名字是ParameterA。

Sensitive:敏感信息,需要加密

Required:必须提供,否则会出错

Property

Description

Name

The name of the parameter.

Data type

The data type of the parameter.

Default value

The default value for the parameter assigned at design time. This is also known as the design default.

Sensitive

Sensitive parameter values are encrypted in the catalog and appear as a NULL value when viewed with Transact-SQL or SQL Server Management Studio.

Required

Requires that a value, other than the design default, is specified before the package can execute.

Description

For maintainability, the description of the parameter. In SQL Server Data Tools (SSDT), set the parameter description in the Visual Studio Properties window when the parameter is selected in the applicable parameters window.

2,Add parameters to Configurations

3,Set Parameter Values After the Project Is Deployed

The Deployment Wizard allows you to set server default parameter values when you deploy your project to the catalog. After your project is in the catalog, you can use SQL Server Management Studio (SSMS) Object Explorer or Transact-SQL to set server default values.

To set server defaults with SSMS Object Explorer:

  1. Select and right-click the project under theIntegration Servicesnode.

  2. ClickPropertiesto open theProject Propertiesdialog window.

  3. Open the parameters page by clickingParametersunderSelect a page.

  4. Select the desired parameter in theParameterslist. Note: TheContainercolumn helps distinguish project parameters from package parameters.

  5. In theValuecolumn, specify the desired server default parameter value.

To set server defaults with Transact-SQL, use thecatalog.set_object_parameter_value (SSISDB Database)stored procedure. To view current server defaults, query thecatalog.object_parameters (SSISDB Database)view. To clear a server default value, use thecatalog.clear_object_parameter_value (SSISDB Database)stored procedure.

MSDN上提供两种方法,一种是使用SSMS来修改,一种是使用TSQL语句来修改

3.1 使用SSMS来修改

选中integration Services Catalogs,右键点击TestISProjects,打开Configure

点击... 来设置参数的值

二,Project Parameter

1,在Project视图下,打开Project.params,创建一个project level 的Parameter, 命名为ProjectParameter_A。

2,将Project Parameter 添加到configurations中,

3,发布到Sql server之后,修改Project parameter的default value。

三,Use of package and project parameters

Parameters are useful for providing runtime values to properties during a package execution. Hence, in a way they replace the concept of configurations that we had for SSIS packages.

Package parameters are useful for providing values to specific package executions. As they are package scope, they would only be available to the package in which they were created.

Project parameters are available to all the packages in a project. They are useful for configuring values which can be shared between packages. For instance if you wanted to have a single parameter containing a server name to be used by multiple packages, then Project Parameters will be useful for you.

You can use a parameter anywhere in an expression by referring it using the following syntax:

@[$<<Project/Package>>::<<ParameterName>>]

The evaluation order is similar to using a variable in an expression and then executing a package. Hence, the value gets evaluated and assigned to the property at Validation phase.

参考文档:

https://msdn.microsoft.com/en-us/library/hh213214.aspx

https://msdn.microsoft.com/en-us/library/hh213293.aspx

http://blogs.msdn.com/b/mattm/archive/2011/07/16/configuring-projects-and-packages-using-parameters.aspx

优质内容筛选与推荐>>
1、&&和&区别,||和|区别?
2、My documents 或卷无效,请重新输入
3、MySQL的几种索引模式
4、2019080702
5、MYSQL内存使用详解


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号