整理SSIS 组件的属性解释及其用法

一,ExecValueVariable属性

有些Task组件执行完成之后,会产生输出结果,称作Execution Value,例如,Execute SQL Task在执行完成之后,会返回受影响的数据行数。Task组件的Execution Value可以通过属性ExecValueVariable来获取。

属性ExecValueVariable指定存储Execution Value的变量名,属性的默认值是none,表示task的输出结果不会被存储到变量;创建一个变量,并将变量名赋值给该属性,表示在Task执行完成之后,SSIS将Task的输出结果赋值给该变量。

示例,在Execute SQL Task中执行更新语句,获取受影响的数据行总数

update dbo.dt set c1=5

1,创建一个变量VarInt,用于保存更新的数据行数量

2,设置Execute SQL Task的属性ExecValueVariable,选择用户创建的变量User:VarInt

3,执行Package,在Watch调试窗口中查看变量的值

4,附上控制流的Task组件的执行值描述

二,ValidateExternalMetadata属性

ValidateExternalMetadata属性,指定该组件是否在设计时(design-time)验证外部输入数据源的元数据,默认情况下,该属性的值是True,因此,在设计Package时,打开Package,添加组件或者运行包,SSIS都会链接到外部数据源,验证数据源输入列的元数据。当该属性值设置为False时,SSIS延迟到运行该组件时才验证外部数据源的元数据。在设计时,SSIS 组件会缓存外部数据源的元数据,不会实时更新缓存中的元数据。

大多数SSIS组件,在跟外部系统(例如,Lookup转换,数据源/目的组件)交互时,都会获取外部列的元数据,并把这些元数据会缓存到Package文件(.dtsx)中。在设计阶段,组件会自动验证缓存的元数据,当和底层(underlying)的数据源不同时,组件会返回一个特殊的状态VS_NEEDSNEWMETADATA,SSIS引擎触发元数据刷新进程,刷新缓存,保证底层元数据和缓存的元数据相同。当在运行阶段时,如果缓存的元数据和底层的数据源不同,这会导致Package运行失败。

During the Validation phase, a component is supposed to check to make sure that the cached metadata in the package is still in sync with the underlying table/view/query. If there is a mismatch, the component returns a special status (VS_NEEDSNEWMETADATA). When this happens at design-time, SSIS triggers a metadata refresh by calling ReinitializeMetadata(). At runtime, this results in an error.

因为,元数据的验证可能是一个非常耗费时间、耗费资源的操作,因此,用户可以在设计阶段禁用 ValidateExternalMetadata 属性,提高Package的设计效率。

参考文档:

Have you used the ExecutionValue and ExecValueVariable properties?

SSIS 属性:ExecValueVariable的更多相关文章

  1. SSIS 组件属性整理

    整理SSIS 组件的属性解释及其用法 一,ExecValueVariable属性 有些Task组件执行完成之后,会产生输出结果,称作Execution Value,例如,Execute SQL Tas ...

  2. SSIS Execute SQL Task 用法

    Execute Sql Task组件是一个非常有用的Control Flow Task,可以直接执行SQL语句,例如,可以执行数据更新命令(update,delete,insert),也可以执行sel ...

  3. SSIS 学习(6):包配置(上)【转】

    Integrartion Services 包实际上就是一个对象属性的集合,在前面我们开发的所有 Integration Services包,其中的变量.属性,比如:数据库链接.同步文件目录等,我们都 ...

  4. jqu

    1 /*2 * 说明:3 * 本源代码的中文注释乃Auscarlin呕心沥血所作.旨在促进jQuery的传播以及向广大jQuery爱好者提供一个进阶4 *的途径,以让各位更加深入地了解jQuery,学 ...

  5. SSIS变量属性中EvaluateAsExpression设置的作用

    我们在做SqlServer SSIS包开发的时候,经常会用到SSIS的变量,我们可以使用和修改SSIS变量的值使得SSIS包的逻辑更灵活,如下图所示: 在定义SSIS变量的时候可以使用固定值(如上图中 ...

  6. SSIS Component的ValidateExternalMetadata属性

    ValidateExternalMetadata Property Indicates whether the component validates its column metadata agai ...

  7. SSIS的DelayValidation属性

    一,DelayValidation Property true if validation of the package is delayed until run time. false if the ...

  8. 利用SSIS的ForcedExecutionResult 属性 和CheckPoint调试Package

    1,ForcedExecutionResult 强制一个package或task执行的结果,共有四种值 None,Success,Failure,Completion,默认值是None,表示不强制返回 ...

  9. [转]SSIS高级转换任务—在Package中是用临时表是需要设置RetainSameConnection属性

    本文转自:http://www.cnblogs.com/tylerdonet/archive/2011/05/20/2052306.html 在上一个导入列这个例子中我们创建一个实际的表来存储文件路径 ...

随机推荐

  1. 多个Img标签之间的间隙处理方法

    1.多个标签写在一行 <img src="/i/eg_tulip.jpg" alt="郁金香" height="100px"/> ...

  2. 如何进行python性能分析?

    在分析python代码性能瓶颈,但又不想修改源代码的时候,ipython shell以及第三方库提供了很多扩展工具,可以不用在代码里面加上统计性能的装饰器,也能很方便直观的分析代码性能.下面以我自己实 ...

  3. [C#] 简单的 Helper 封装 -- SQLiteHelper

    using System; using System.Data; using System.Data.SQLite; namespace SqliteConsoleApp { /// <summ ...

  4. CSS样式重置(转)

    body,h1,h2,h3,h4,h5,h6,dl,dt,dd,ul,ol,li,th,td,p,blockquote,pre,form,fieldset,legend,input,button,te ...

  5. XSS分析及预防

    XSS(Cross Site Scripting),又称跨站脚本,XSS的重点不在于跨站点,而是在于脚本的执行.在WEB前端应用日益发展的今天,XSS漏洞尤其容易被开发人员忽视,最终可能造成对个人信息 ...

  6. WebGIS中等值线前端生成绘制简析

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 等值线是GIS制图中常见的功能,一般有两种思路:一种是先进行插 ...

  7. MongoDB学习笔记~对集合属性的操作

    回到目录 $unset清除元素 请注意在单个数组元素上使用$unset的结果可能与你设想的不一样.其结果只是将元素的值设置为null,而非删除整个元素.要想彻底删除某个数组元素,可以用$pull 和$ ...

  8. Vim使用

    模式 ESC\Ctrl+c:退出编辑模式 ZZ\wq:命令模式下保存退出 编辑 i:进入编辑模式 I:转到行首非空字符开始编辑 s:删除当前字符进入编辑模式 a:从当前字符后开始编辑 A:从当前行末非 ...

  9. Struts的文件上传下载

    Struts的文件上传下载 1.文件上传 Struts2的文件上传也是使用fileUpload的组件,这个组默认是集合在框架里面的.且是使用拦截器:<interceptor name=" ...

  10. 如玫瑰一般的PHP与C#混合编程

    故事背景是这样的,有一套项目,服务器端是用C#写的,为了完成某种事情,它需要使用到一个组件,这个组件很小但很重要,很不巧的是,这个这个组件是用PHP语言写的,如果为了使用这个组件而专门搭建一个PHP的 ...