共计 1744 个字符,预计需要花费 5 分钟才能阅读完成。
这篇文章主要介绍“SQL Server2008 SSIS 变量简介”,在日常操作中,相信很多人在 SQL Server2008 SSIS 变量简介问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SQL Server2008 SSIS 变量简介”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!
一、SSIS 变量简介
SSIS(SQLServerIntegrationServices,SQLServer 整合服务) 变量分分为两种,一种是系统变量,一种用户定义的变量。系统变量包括有关包、容器、任务或事件处理程序的非常有用的信息。例如,在运行时,MachineName 系统变量包含运行包含的计算机的名称,StartTime 变量包开始运行的时间。系统变量是只读的。在 SSIS 中,用户变量是用户在开发的过程中根据需要申明的变量。用户变量可以使用在脚本中,在由优先约束、For 循环容器、派生列转换和条件性拆分转换使用的表达式中,以及在更新属性值的属性表达式中。
在各种编程语言中申明的变量一般情况下都会有作用范围的,SSIS 变量也不例外,SSIS 变量也是有作用范围的。根据作用范围分类,变量分为包变量和组件变量。包变量在包任何一个组件中都可以调用,组件变量只能够在声明变量的组件中有效。在变量的窗口中可以看到变量的作用域。
可以看到 i 变量的作用域是整个 Package1 包,而 myconfig 变量作用域是数据流任务组件。
二、SSIS 用户变量的声明、赋值、使用
1、申明变量
申明变量是非常简单、如果你要申明包变量,只要单击控制流选项卡,然后在包开发区域空白处单击右键选择变量命令,或者新建变量按钮就新建一个变量,输入名称,选择数据类型,赋初值就完成了。
如果要声明某数据流任务组件使用的变量,只要双击该数据流任务组件,在流控制控制选项卡空白的地方单击右键选择变量命名,在变量窗口中新建一个变量命令,在变量窗口中新建一个变量,这时变量的作用域就是你选择的流任务组件。
2、赋值
在实际开发中,除了在变量声明的时候给变量赋值外,还有两种方式,一种是通过执行 SQL 任务组件返回值的方式给变量赋值,一种是通过脚本组件来给变量赋值。
在执行 SQL 任务组件方法是先设置好组件的数据库连接属性,然后输入从数据库取数据的 SQL 语句,设置组件返回的结果集为单行。在结果集界面中单击“新建”,在结果集那一列输入你刚才 SQL 返回列的名称,在变量名称列选择你要赋值的变量。
利用脚本组件赋值变量比较简单,只需要设置脚本组件的 ReadOnlyvariable 或者 ReadWriteVariable,将变量的名称设置他们的值(多个变量以逗号分割),它们的区别是前者在脚本组件只能够读,或者可以读写。然后在脚本组件中通过
Dts.Varables(变量名称).Value= 值
3、变量的使用
变量在 ssis 中使用的地方很多,笔者介绍两个典型的应用。
(1)执行 SQL 任务组件的参数
假定申明了一个日期类型变量 StartDate,用户需要通过从某个表中选择在 StartDate 日期之前的数据,这个时候需要将 StartDate 作为参数传给执行 SQL 任务组件。在执行 SQL 任务组件输入 SQL 的地方输入如下命令语句:
SELECT*FROMTABLE_aWHERE 日期字段 ?
然后在参数据映射界面新增映射, 在变量名称列选择用户变量 StartDate, 选择类型为 DATE, 在参数名称列输入给参数取的名称。这样就可以将 StartDate 变量传给 SQL 任务组件的 SQL 语句了。
(2)在脚本组件中赋值
可以在脚本组件中通过 Dts.Variables(i).Value= 1 方式赋值给变量,也可以通过这种方式来使用变量。比如 Dts.Variables(other_variable).Value=Dts.Variables(i).Value+1, 这个语句是可以在脚本组件中执行的, 将 i 变量加 1 后赋值给另外一个量。
到此,关于“SQL Server2008 SSIS 变量简介”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!