OLEDB 命令转换组件的用法

简介:

在数据流任务组件中,OLEDB 命令转换组件对输入的每行数据调用TSQL,该组件能够把输入的数据作为参数,因此,该转换组件主要用于运行参数化的查询。

命令转换组件的配置十分简单,只有三个可编辑属性,位于Custom Properties下,如图:

SqlCommand 属性:要执行的SQL命令,使用 ? 代表引用一个参数,每一个参数都是一个外部列,参数的值来源于上游组件的输入

组件的转换是逐行进行的,组件的输入分为:输入列和外部列,输入列是上游组件输入的数据流,而外部列是SQL命令使用的参数。

一,参数化查询

配置SQL命令中包含参数,参数值存储在外部数据列中,外部列的值通过组件的输入列传递,也就是说,需要建立参数和外部列的映射,输入列和外部列的映射。

1,配置命令属性(SqlCommand)

OLEDB 连接管理器使用?代表一个参数,按照参数出现的位置,?的序号从0开始,依次递增,OLEDB 通过序号来引用参数值。因此在SqlCommand属性中,

update dbo.test_data
set name=?
where id=?

2,配置列映射(Column Mappings)

输入列是上游组件的输入,目的列是SQL 命令中的参数,通过列映射(Column Mappings)的选项卡,配置输入列和参数的映射:

Param_0对应SqlCommand中序号为0的参数,Param_1对应SqlCommand中序号为1的参数,依次类推。

3,配置输入和输出属性

命令转换组件内部实现输入列和外部列的转换,可以通过ErrorRowDisposition属性,设置转换过程对错误的处理模式,分为三种模式:RD_IgnoreFailure(忽略错误),RD_RedirectRow(重定向到错误输出),RD_Failcomponent(组件失败)

点击External Columns选项卡的Param_x,可以配置参数的属性,配置DataType等属性

 

 由于OLEDB命令转换组件是逐行执行命令的,每执行一次,都要连接数据库,其执行的效率是非常慢的,推荐通过把数据插入到暂存表,在数据库中执行批量数据更新。

作者悦光阴
本文版权归作者和博客园所有,欢迎转载,但未经作者同意,必须保留此段声明,且在文章页面醒目位置显示原文连接,否则保留追究法律责任的权利。
分类: SSIS 组件
标签: SSIS, 命令转换








本文转自悦光阴博客园博客,原文链接:http://www.cnblogs.com/ljhdo/p/4488556.html,如需转载请自行联系原作者
目录
相关文章
|
开发框架 .NET 数据库
.NETCore 获取数据库上下文[实例的方法和配置连接字符串
.NETCore 获取数据库上下文[实例的方法和配置连接字符串
771 1
|
5月前
|
存储 SQL 关系型数据库
MySQL数据库——存储过程-介绍以及基本语法(特点、创建、调用、查看、删除、示例)
MySQL数据库——存储过程-介绍以及基本语法(特点、创建、调用、查看、删除、示例)
127 0
|
C# 图形学
Unity通过组件名称字符串添加脚本
通过Type.GetType(string typeName)来得到字符串对应的Type。 Type.GetType(typeName)能获取到自定义类的类型,但是获取Unity的组件不行。 例如Type.GetType(“Rigidbody”)值为null,其实是少了程序集。 string qualifiedName = typeof(Rigidbody).AssemblyQualifiedName; ty 获取Unity的组件程序集全名,再通过Type.GetType()得到的就不为null了。
487 0
Unity通过组件名称字符串添加脚本
|
SQL Shell PHP
某教程学习笔记(一):19、任意文件上传和sql语句拿shell
某教程学习笔记(一):19、任意文件上传和sql语句拿shell
100 0
某教程学习笔记(一):19、任意文件上传和sql语句拿shell
|
Web App开发
IE6/IE7/IE8/IE9不支持exec的简写方式
IE6/IE7/IE8/IE9不支持exec的简写方式 如下 var ary = /h/('hello'); alert(ary); IE6/7/8/9中报错Venus'Blog Firefox/Safari/Chrome/Opera的最新版本均弹出了“h”   以上写法等价于 var ary = /h/.exec('hello'); 即 Firefox/Safari/Chrome/Opera浏览器中使用exec方法时可以去掉“exec”用 “正则直接量+()” 方式使用。
867 0
下一篇
无影云桌面