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

在整个包中包含了控制流选项卡、数据流选项卡、事件处理程序选项卡等等。下面通过一个简单的例子介绍如何利用这些选项卡创建一个完成的工作任务包。

本示例的主要功能是从数据库AdventureWorks中Product表中读取2001年到2007年的数据导入到Excel中。

  1. 创建变量 从图左边的变量或从SSIS菜单中选择变量来的打开变量(Variables)按图创建两个日期变量

    再图中,我们将变量StartDate的值设置为"2001/1/1",EndDate的值设置为" 2007/1/1"

  2. 创建连接管理器

  在创建完变量后,接着创建一个连接管理器。右击程序包编辑器底部的连接管理器窗口的空白处,选择新建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包的开发的更多相关文章

  1. 使用SSIS包调度开发的包

    在项目中,开发完自己的packages之后,需要使用agentjob之类的服务来调度自己的package,当然我们也可以使用一个package来调度这些,下面就是我的一个简单的尝试. 没有设计得像Ag ...

  2. SSIS包的组建之连接管理器

    上一篇我们通过一个示例来介绍一下SSIS 包的开发.接下来的内容我们将学习一下包中各个选项卡的使用.如:连接管理器选项卡.控制流选项卡.数据流选项卡和事件处理选项卡等等.这一篇将介绍一下连接管理器作用 ...

  3. SQL Server Integration Services(SSIS) 包配置与部署

    SSIS配置此处的配置方式,主要针对到正式服务器上要修改服务器名,和连接服务器等配置注意:1. 包配置在windows2008上生成后,在windows2003上mysql的配置无法使用,总是报错连接 ...

  4. 总结运行SSIS包的几种方式

    方式一: 在BIDS里直接跑. 这个BIDS指的就是SQL Server Business Intelligence Development Studio,对于.net开发者来说它就是Visual S ...

  5. 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架

    一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG ...

  6. 部署SSIS包完成远程数据更新

    ** 温馨提示:如需转载本文,请注明内容出处.** 本文连接:http://www.cnblogs.com/grom/p/9018978.html 笔者需要定期从服务器更新N家客户的远程服务器数据,上 ...

  7. SSIS 包部署错误 0xC0010014

    SSIS 包部署错误 0xC0010014 Reinhard 在部署 SSIS 包时,提示如下错误. 由于错误 0xC0010014"发生了一个或多个错误.在此消息之前应有更为具体的错误消息 ...

  8. Sql Server 部署SSIS包完成远程数据传输

    本篇介绍如何使用SSIS和作业完成自动更新目标数据任务. ** 温馨提示:如需转载本文,请注明内容出处.** 本文链接:https://www.cnblogs.com/grom/p/9018978.h ...

  9. c#控制台調用SSIS包互传值

    有时候不仅仅需要在内部执行package包,多数情况下,是需要在外部进行调用,比如,需要一个批处理或者控制台程序进行外部调用SSIS包,而往往这个包所配置的连接字符串是经过加密处理的,所以当外部调用S ...

随机推荐

  1. MySQL中too many connections超出最大连接数的处理方法

    MySQL最大连接数的问题 在MySQL的源码中,默认最大的连接数是16384 {"max_connections", OPT_MAX_CONNECTIONS, "The ...

  2. 浅析TCP/IP

    TCP/IP概述 TCP/IP起源于1969年美国国防部(DOD:The United States Department Of Defense)高级研究项目管理局(APRA:AdvancedRese ...

  3. Java关键字this

    Java关键字this只能用于方法方法体内.当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是 this.因此,this只能在类中的非静态方法中使用,静 ...

  4. SQLtie 增删该查

    建表,添加数据,更新数据,删除数据,删除表 . 先介绍三个核心方法 1.openDatabase:这个方法使用现有数据库或创建新数据库创建数据库对象. 2.transaction:这个方法允许我们根据 ...

  5. 023-Spring Boot 服务的注册和发现

    一.概述 服务调用 1.1.nginx方式 1.2.注册中心 二.注册中心[zookeeper] 2.1.安装zookeeper3.4.11 2.2.服务提供方,需要在服务启动时吗.,把服务的信息(I ...

  6. sql server2005版本中,len函数计算了字符串末尾的空格

    sql server2005版本中,len函数计算了字符串末尾的空格的长度,以下是测试脚本: print @@version declare @v varchar(max) set @v = 'hp, ...

  7. Python 7 多线程及进程

    进程与线程: 进程的概念: 1.程序的执行实例称为进程. 2.每个进程都提供执行程序所需的资源.一个进程有一个虚拟地址空间.可执行代码.对系统对象的开放句柄.一个安全上下文.一个独特的进程标识符.环境 ...

  8. Linux查看某个端口+gcc动态编译

    Linux下就: 1.lsof -i:端口号 2.netstat -tunlp|grep 端口号 gcc:动态编译 gcc –fpic –c file.c –o file.o gcc –shared ...

  9. Linux权限管理 文件特殊权限

    概述 除了我们前面介绍的rwx权限外,Linux中还有另外三种特殊权限:SUID,SGID,SBIT   权限    执行条件 执行示例 SUID s出现在文件所有者的x权限上. 1. SUID只能用 ...

  10. OC中NSSet去重细节

    我们都知道,NSSet在存储数据时,不允许存储相同数据?那么,这里的相同该如何理解呢? 很多人都简单的理解为按照其存储对象的内存地址进行评判.其实不然.经过个人实验证明:当类型为NSString,NS ...