SSIS包的开发
在上一章节中我们初步了解了SSIS体系结构以及如何创建一个SSIS包。现在就介绍一下如何在创建的包中使用各个选项卡。打开上一章节创建的SSIS包。整个界面风格如下:

在整个包中包含了控制流选项卡、数据流选项卡、事件处理程序选项卡等等。下面通过一个简单的例子介绍如何利用这些选项卡创建一个完成的工作任务包。
本示例的主要功能是从数据库AdventureWorks中Product表中读取2001年到2007年的数据导入到Excel中。
- 创建变量 从图左边的变量或从SSIS菜单中选择变量来的打开变量(Variables)按图创建两个日期变量
再图中,我们将变量StartDate的值设置为"2001/1/1",EndDate的值设置为" 2007/1/1" - 创建连接管理器
在创建完变量后,接着创建一个连接管理器。右击程序包编辑器底部的连接管理器窗口的空白处,选择新建OLE DB连接,弹出如下对话框

在图中选择新建按钮。弹出如下图信息。然后根据图中的选项配置数据库信息。最后单击确定保存该连接。

然后在单击确定按钮。最后在连接管理器上创建一个如下数据库连接

你可以右击新建的LocalHost.AdventureWorks.sa连接管理器并重命名为AdventureWorks。
然后右击程序包编辑器底部的连接管理器窗口-〉新建连接-〉Excel文件的连接管理器-〉添加按钮。弹出对话框。然后在对话框中做如下设置。

最终单击确定按钮。然后修改名称为Product.
3 .使用控制流
控制流选项卡是执行程序包的工作流的地方。在本示例中我们从工具中将数据流任务(Data Flow Task)控件拖放到控制流选项卡中。如图所示。这个Data Flow Task 将执行数据的转换工作。

4.使用数据流
双击数据流任务(Data Flow Task)就会打开数据流(Data Flow)选项卡。下图显示了程序包中的数据流选项卡,尚未拖放控件。

从工具箱中拖出一个OLE DB 源,命名为Products。双击改源进行配置,如图所示。确保指向AdventureWorks连接管理器。并将数据访问模式项改为SQL命令。在SQL命令文本窗口中输入下列命令。
select * from Production.Product where SellStartDate>? and SellStartDate<?

问号表示通过变量传递的参数值。单击参数按钮将问号映射到已创建的变量。在设置查询参数窗口中看到每个问号参数都是有序的。因此第一问号对应Parameter0,第二个问号对应Parameter1 。依次类推。了解参数配置后,我们将Parameter0 映射到User::StartDate,Parameter1映射到User::EndDate。如图:

单击确定按钮返回到数据流选项卡中。接下来在工具箱中的数据流目标中将Excel目标控件拖放到设计窗格上。通过从数据源拖动绿色箭头到该Excel目标源。然后右键单击Excel目标源选择编辑,弹出对话框,接着按图下步骤设置信息。


设置成功后,整个数据流选项卡的流程如下:

5.执行包
包创建成功后,现在我们来执行一下,看看效果如何。右键单击Package.dtsx包-〉选择执行包选项。将会看到如下结果图

途中绿色表示包创建成功并执行完成。打开导入的Excel,我们发现已经存在数据。到此一个简单的包流程设计完成。后续我们将如何使用包中各个选项卡。
SSIS包的开发的更多相关文章
- 使用SSIS包调度开发的包
在项目中,开发完自己的packages之后,需要使用agentjob之类的服务来调度自己的package,当然我们也可以使用一个package来调度这些,下面就是我的一个简单的尝试. 没有设计得像Ag ...
- SSIS包的组建之连接管理器
上一篇我们通过一个示例来介绍一下SSIS 包的开发.接下来的内容我们将学习一下包中各个选项卡的使用.如:连接管理器选项卡.控制流选项卡.数据流选项卡和事件处理选项卡等等.这一篇将介绍一下连接管理器作用 ...
- SQL Server Integration Services(SSIS) 包配置与部署
SSIS配置此处的配置方式,主要针对到正式服务器上要修改服务器名,和连接服务器等配置注意:1. 包配置在windows2008上生成后,在windows2003上mysql的配置无法使用,总是报错连接 ...
- 总结运行SSIS包的几种方式
方式一: 在BIDS里直接跑. 这个BIDS指的就是SQL Server Business Intelligence Development Studio,对于.net开发者来说它就是Visual S ...
- 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架
一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG ...
- 部署SSIS包完成远程数据更新
** 温馨提示:如需转载本文,请注明内容出处.** 本文连接:http://www.cnblogs.com/grom/p/9018978.html 笔者需要定期从服务器更新N家客户的远程服务器数据,上 ...
- SSIS 包部署错误 0xC0010014
SSIS 包部署错误 0xC0010014 Reinhard 在部署 SSIS 包时,提示如下错误. 由于错误 0xC0010014"发生了一个或多个错误.在此消息之前应有更为具体的错误消息 ...
- Sql Server 部署SSIS包完成远程数据传输
本篇介绍如何使用SSIS和作业完成自动更新目标数据任务. ** 温馨提示:如需转载本文,请注明内容出处.** 本文链接:https://www.cnblogs.com/grom/p/9018978.h ...
- c#控制台調用SSIS包互传值
有时候不仅仅需要在内部执行package包,多数情况下,是需要在外部进行调用,比如,需要一个批处理或者控制台程序进行外部调用SSIS包,而往往这个包所配置的连接字符串是经过加密处理的,所以当外部调用S ...
随机推荐
- resetForm(name1,name2)-我的JavaScript函数库-mazey.js
重置表单输入值为原始(空)状态. 参数:name1,name2,name3...NAME属性,可以多个. function resetForm(){ for(var i = 0; i < arg ...
- <mvc:view-controller path=""/>标签的作用
<mvc:view-controller path=""/>标签的作用 对应WEB-INF目录下面的JSP页面,我们知道是不能直接使用URL访问到.需要通过转发的方式, ...
- 正确使用索引(sql优化),limit分页优化,执行计划,慢日志查询
查看表相关命令 - 查看表结构 desc 表名- 查看生成表的SQL show create table 表名- 查看索引 show index from 表名 使用索引和不使用索引 由 ...
- php 使用sendmail发送邮件
php 使用sendmail发送邮件 1.配置php.ini SMTP=smtp.163.com sendmail_from = 17760273453@163.com sendmail_path = ...
- Oracle学习笔记—常用函数
这里记录一些oracle常用的函数. TO_NUMBER()函数 将字符串类型转换成一个 number 类型的值. SELECT TO_NUMBER('100.00') FROM DUAL; TO_C ...
- 交叉熵(Cross-Entropy) [转载]
交叉熵(Cross-Entropy) 交叉熵是一个在ML领域经常会被提到的名词.在这篇文章里将对这个概念进行详细的分析. 1.什么是信息量? 假设X是一个离散型随机变量,其取值集合为X,概率分布函数为 ...
- python中颜色设置
实现过程: 终端的字符颜色使用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关. 转义序列是以ESC开头,即用\033来表示(ESC是ASCII码用十进制表示是27,用八进制表示就是033 ...
- django-admin 修改admin自带模版
还不知道怎么指定修改每个页面,我就把把所有修改写在一个页面,通过url进行判断是否是是否显示修改内容,修改的是change_form.html ,在admin里面可以找到 {% block objec ...
- python多线程编程(3): 使用互斥锁同步线程
问题的提出 上一节的例子中,每个线程互相独立,相互之间没有任何关系.现在假设这样一个例子:有一个全局的计数num,每个线程获取这个全局的计数,根据num进行一些处理,然后将num加1.很容易写出这样的 ...
- loadrunder之脚本篇——接口传参为本地文件
导言 前几天需要对公司一个专门很重要的接口进行压测,这个还不是重点,重点是传参为本地的图片!刚刚开始通过web_custom_request()函数来解决,可是脚本并不能通过!后面又百度不到答案,通过 ...