利用SQL的SSIS包设计器来导出数据表数据到excel

平台:SQL server 2005
先来了解一些基本的概念。
数据的导出涉及到数据转换的概念。企业中的数据并不是以统一的格式存储的。比如:有SQL、access、oracle、excel,这些存储形式的格式都是不一样的,但是我们可以利用SSIS包设计器来对这些不同格式的文件之间进行转换,以便更加灵活地使用企业的数据。
为什么要进行数据转换?
当我们希望将数据从一个服务器移动到另一个服务器或者另外一个地方,或者需要对数据进行复制、存档、迁移的操作,需要数据转换。
数据转换前该考虑什么问题?
更改数据的格式,数据的重构和映射。数据的一致性。验证数据的有效性。如果数据是一致的,但是格式不一致,或者数据的表现形式不统一,那么是不行的。
SQL的数据转换工具有哪些?
SQL的数据转换的方式是多样的,但是他们的功能各有侧重,所以需要我们根据实际的需要有选择的使用。
1、 使用T-SQL语句,从现有表中选择数据并添加到表中。
2、 备份和还原。
3、 分离和附加。
4、 复制。(该功能在前一篇文章有介绍)
5、 SSIS导入和导出向导。
6、 SSIS包设计器。
我们使用SSIS包设计器可以定义更加复杂的数据流。做比SSIS向导更加精确和专业的转换。
项目需求:在公司的数据库中,有一个表叫“玩家一览表”,总经理希望查看该表的内容,但是总经理不会使用SQL的查看方式,只会使用excel,并且总经理只希望看到“姓名”、“年龄”、“种族”、“职业”字段。
项目分析:根据以上的需求,我们需要使用SSIS包设计器将结果导出到excel表格中,方便总经理的查看。
先说说该实现该项目的整体思路:
1、 启动BIDS
2、 新建项目
3、 新建数据源并连接数据源
4、 添加数据流任务
5、 添加并编辑数据流源
6、 添加并编辑“派生列”转换方法
7、 添加并编辑数据流目标
8、 验证
下面来看看具体的实现步骤
(一)、我们要用到一个工具BIDS,打开该工具,新建项目,如图
截图00
BIDS的界面如图所示
截图01
文件——新建项目,或直接点击新建项目按钮
截图02
截图03
(二)、创建完成项目后,新建数据源,并连接该数据源,如图
截图04
截图05
截图06
连接管理器配置后,如图所示
截图07
截图08
右击连接管理器,从数据源新建连接
截图09
截图10
配置完成的数据源如图所示
截图11
(三)、添加数据流任务,即我们要设计什么样的任务流,等这个流定义完成,会一个包的形式保存,且可以重复执行
将数据流任务拖动到右边的窗口
截图12
(四)、添加并编辑数据流的源,数据库源选择OLE DB源,即要从数据库向外导出数据。
首先将OLE DB源拖动到右边的编辑界面
截图13
然后右击该源——编辑
截图14
弹出编辑界面,做如下的配置
截图15
(五)、因为总经理需要查看该表中的年龄字段,而该表中没有该字段,只有出生日期字段,所以我们需要配置“派生列”,如下图
截图16
将派生列域OLE DB源进行连接,单机OLE DB源的向下绿色箭头,拖动到派生列
截图17
右击派生列,进行相关的编辑
截图18
截图19
配置完成的表达式,如图所示
截图20
(五)、派生列编辑完成后,我们要添加并编辑数据流的目标,即excel目标
如图所示,采用同上述类似的方法,先将数据流目标拖动到主界面,然后编辑数据流目标,并且将数据流目标和派生列用向下的绿色箭头相连
截图21
截图22
截图23
截图24
配置好后,如图所示
截图25
截图26
设计好的SSIS包,如图所示
截图27
(六)、最后我们来验证一下,单击工具栏中的调试——执行,看看数据是不是成功导入到桌面的excel表格了
截图28
截图29
我们打开excel表格看看,有我们刚才导入的数据,完好无损,并且包含年龄字段,该字段是在“派生列”里根据出生日期计算出来的。
截图30
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值