SSIS常用的包—脚本和组件任务
2011-01-02 01:08
211 查看
脚本任务允许利用Microsoft Visual Studio环境来使用VB.NET语言创建和执行脚本。ActiveX任务允许从SQL Server 2000中执行脚本。与ActiveX任务相比,脚本任务有一些优点。如下列举。
一整套智能设计环境
轻松地向脚本传递参数
轻松地在脚本代码中设置断点
可以以二进制形式预编译脚本
在脚本任务的编辑界面内如图3-17有一个脚本语言选项用来选择编辑语言,对于SQL Server来说只能选择VB.NET。如果PreCompileScriptIntoBinaryCode选项设置为true,脚本将会编辑并加快任务运行,这样做的副作用是package将会变大。
![](http://pic002.cnblogs.com/images/2011/72678/2011010201061049.jpg)
图3-17
EntryPoint选择项用来设定程序入口。ReadOnlyVariables选项和ReadWriteVariables选项允许想脚本中传递SSIS变量,ReadOnlyVariables表明该变量只读,ReadWriteVariables表明该变量可读写。多个变量之间可以用逗号隔开。点击Design Script可以编辑脚本。
点击Design Script之后打开Visual Studio环境,在这个环境中可以调试,设置断点。下面的一个列子演示脚本怎样获得传递的系统变量。脚本首先判断变量是否存在,然后弹出一个消息框显示任务的名字。
执行package执行结果如下图3-18
![](http://pic002.cnblogs.com/images/2011/72678/2011010201070972.jpg)
图3-18
这里交接一下ActiveX脚本,为保证向后兼容SQL Server 2000 DTS在SSIS中保留ActiveX脚本,你会发现ActiveX脚本任务不是种高级任务,脚本任务可以完全代替它。和脚本任务一样,它也在编辑页面中配置。在早先的SQL Server 2000中,它支持除VBScript外的多种语言。EntryMethod属性指定要这姓的方法,也可以点击省略号浏览选择脚本文件。
注意:浏览选择将会覆盖已经选择的脚本。
一整套智能设计环境
轻松地向脚本传递参数
轻松地在脚本代码中设置断点
可以以二进制形式预编译脚本
在脚本任务的编辑界面内如图3-17有一个脚本语言选项用来选择编辑语言,对于SQL Server来说只能选择VB.NET。如果PreCompileScriptIntoBinaryCode选项设置为true,脚本将会编辑并加快任务运行,这样做的副作用是package将会变大。
![](http://pic002.cnblogs.com/images/2011/72678/2011010201061049.jpg)
图3-17
EntryPoint选择项用来设定程序入口。ReadOnlyVariables选项和ReadWriteVariables选项允许想脚本中传递SSIS变量,ReadOnlyVariables表明该变量只读,ReadWriteVariables表明该变量可读写。多个变量之间可以用逗号隔开。点击Design Script可以编辑脚本。
点击Design Script之后打开Visual Studio环境,在这个环境中可以调试,设置断点。下面的一个列子演示脚本怎样获得传递的系统变量。脚本首先判断变量是否存在,然后弹出一个消息框显示任务的名字。
Imports System Imports System.Data Imports System.Math Imports Microsoft.SqlServer.Dts.Runtime Public Class ScriptMain Public Sub Main() Dim variables As Variables If Dts.Variables.Contains("TaskName") = True Then Dts.VariableDispenser.LockOneForRead("TaskName", variables) Dim TaskName As Object = variables("TaskName").Value End If MsgBox("You are in the task: " & CStr(variables("TaskName").Value)) Dts.TaskResult = Dts.Results.Success End Sub End Class
执行package执行结果如下图3-18
![](http://pic002.cnblogs.com/images/2011/72678/2011010201070972.jpg)
图3-18
这里交接一下ActiveX脚本,为保证向后兼容SQL Server 2000 DTS在SSIS中保留ActiveX脚本,你会发现ActiveX脚本任务不是种高级任务,脚本任务可以完全代替它。和脚本任务一样,它也在编辑页面中配置。在早先的SQL Server 2000中,它支持除VBScript外的多种语言。EntryMethod属性指定要这姓的方法,也可以点击省略号浏览选择脚本文件。
注意:浏览选择将会覆盖已经选择的脚本。
相关文章推荐
- SSIS常用的包—脚本和组件任务
- SSIS常用的包—Web服务任务
- SSIS常用的包—WMI数据读取任务和WMI事件监听任务
- Unity常用类之脚本、对象与组件
- SSIS常用的包—执行任务
- SSIS中执行SQL任务组件参数传递的问题
- SSIS常用的包—执行程序包任务
- SSIS中的脚本—脚本任务中使用程序集
- SSIS常用的包—大量插入任务(Bulk Insert task)
- SSIS常用的包—文件系统任务
- SSIS常用的包—使用Bulk Insert执行任务
- SSIS常用的包—发送Email任务
- SSIS常用的包—数据流任务
- ssis常用包------文件系统任务
- SSIS常用的包—消息队列任务
- SSIS脚本组件的代码
- SSIS常用的包—大量插入任务(Bulk Insert task)
- SSIS-调式脚本组件
- SQL2005 SSIS-在脚本组件中访问包变量
- 微软BI 之SSIS 系列 - MVP 们也不解的 Scrip Task 脚本任务中的一个 Bug