首页 > 代码库 > SSIS Parameter用法

SSIS Parameter用法

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 create project parameters at the project level and package parameters at the package level. Project parameters are used to supply any external input the project receives to 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 the Integration Services node.

  2. Click Properties to open the Project Properties dialog window.

  3. Open the parameters page by clicking Parameters under Select a page.

  4. Select the desired parameter in the Parameters list. Note: The Container column helps distinguish project parameters from package parameters.

  5. In the Value column, specify the desired server default parameter value.

To set server defaults with Transact-SQL, use the catalog.set_object_parameter_value (SSISDB Database) stored procedure. To view current server defaults, query the catalog.object_parameters (SSISDB Database) view. To clear a server default value, use the catalog.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.


SSIS Parameter用法