SQL Server可写脚本和编程扩展SSIS包
作者:hehai 发布时间:2009-01-20 16:29:00
微软的SQL Server 2005中用来替代数据传输服务(DTS)的SQL Server综合服务(SSIS),包含了很多工具用于导入数据并将其转换为有意义的信息,而不仅仅是被动的导入。但是还有一点要注意的是,你会发现这个新的SSIS工具有时候并不能完全覆盖你要做的所有事情。
因此,微软提供了两种基本方法来扩展SSIS的功能。一种方法对那些没有很多编程经验,或者是不需要编写复杂程序的人们来说相对简单;另一种方法就是复杂的,它可以让喜欢挑战的程序员深入SSIS,对其进行很大程度上的扩展。
简单方式:脚本
我们中的大多数人都在某种程度上至少接触过脚本,SSIS通过在SSIS包中使用VB .NET来为程序员提供编写脚本动作的功能。脚本的范围,与客户项目相比,是十分小并且集中的;那是在你需要在现有的包允许或者已经完成的范围内多少做些修改的时候使用的。
在SSIS包里面,有两个元素是你可以用来添加脚本的:Script Task(在综合服务设计应用程序的控制流窗口中)和Script Component(在数据流窗口中)。它们俩的应用环境稍微有些不同。
脚本任务(Script Task)是你用来在包里面实现一般目的的流控制的——它比脚本组件(Script Component)更加全局化,功能更强大,但是也复杂得多。它在包的数据流之外运行,不能被数据流的工作方式约束,虽然脚本任务通常都是只有包被触发的情况下才运行(虽然你可以构建在异常里面)。任务也支持断点和调试,这在你编写了比较精细的具有控制逻辑或者完成某类决策制订的脚本的时候比较有用。关于脚本任务的一个例子就是查询活动目录,寻找一些关于数据的信息,或者是与另外一个数据仓库对话——都是在运行包之前。
脚本组件更加贴近数据流工作的方式。脚本组件不是在整个包中之运行一次,而是它的主要处理为每个需要处理的数据行运行一次。脚本组件有三个比较基本的运行环境:数据源、数据转换,或者数据目标。组件的交互性也比较小——它并不支持脚本任务支持的那种类型的调试,这是其一。使用脚本组件的大多数情况是类似一行接一行的转换,构建客户ODBC目标,或者是不能通过SSIS本地函数处理的不重要的错误处理或者转换动作。


猜你喜欢
- 一、前言我用的是面向对象写的,把界面功能模块封装成类,然后在客户端创建对象然后进行调用。好处就是方便我们维护代码以及把相应的信息封装起来,每
- 一、概述 对象是Oracle8i以上版本中的一个新的特性,对象实际是对一组数据和操作的封装,对象的抽象就是类。在面向对象技术中,对象涉及到以
- 因为需要检测一个一个链接中是否包含了IP地址,在这里需要使用到正则表达式 ,python完美的支持了正则表达式,在这里使用re模块来完成,对
- 目录话不多说,直接贴所有代码运行效果需要用到的两张图片总结话不多说,直接贴所有代码import randomimport sysimport
- 执行以下SQL,即OK咯叻!! SQL:alter database 数据库名称 SQL_Latin1_General_CP1_CI_AS
- python制作超级玛丽游戏,供大家参考,具体内容如下这篇文章,我们优先介绍超级玛丽游戏中的多状态跳跃,和行走地图拖动的原理,然后实现。并实
- 在这个自动化时代,我们有很多重复无聊的工作要做。 想想这些你不再需要一次又一次地做的无聊的事情,让它自动化,让你的生活更轻松。 那么在本文中
- 修改list中所有元素类型:方法一:new = list()a = ['1', '2', '3
- OUTPUT是SQL SERVER2005的新特性,可以从数据修改语句中返回输出,可以看作是"返回结果的DML"。INS
- 插入数据MySQL 表中使用 INSERT INTO SQL语句来插入数据。你可以通过 mysql> 命令提示窗口中向数据表中插入数据
- 本文实例为大家分享了python实现滑雪游戏的具体代码,供大家参考,具体内容如下# coding: utf-8# 滑雪小游戏import s
- 环境:Windows, Python2.7一维情况:<span style="font-size:14px;"&g
- oracle 的表空间实例详解查询表空间SELECT UPPER(F.TABLESPACE_NAME) "表空间名",
- python生成遍历暴力破解密码(这里已遍历暴力破解rar为例,只提供生成密码以及遍历密码)这个也就是提供一个思路,需求是这样的,我XX的闺
- OCR of Hand-written Data using kNNOCR of Hand-written Digits我们的目标是构建一个
- 对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来
- 这篇文章主要介绍了sql获取存储过程返回数据过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友
- thinkphp查询mssql数据库出现乱码的原因是ThinkPHP默认为UTF-8,而msmsql数据库是简体中文版,存储的是GB2312
- 一、VScode下载官网Download Visual Studio Code - Mac, Linux, Windows点击64 bit会
- 什么是钩子之前有转一篇关于回调函数的文章钩子函数、注册函数、回调函数,他们的概念其实是一样的。 钩子函数,顾名思义,就是把我们自己实现的ho