开篇介绍

碰到有几个朋友问到这个问题,比较共性,就特意写了这篇小文章说明一下如何实现在 SSIS 中导出数据到 Office Excel 2013 中。通常情况下 2013 以前的版本大多没有问题,但是到 2013 就可能在建立连接管理器的时候出现链接失败。

建议在看这一篇文章之前,如果有导出数据到 Excel 2013 的需求,请先参看我的另外一篇文章 - SSIS 系列 - 通过 OLE DB 连接访问 Excel 2013 以及对不同 Sheet 页的数据处理 。先按照这篇文章实际做一遍,安装所需要的驱动,等成功实现了,那么这里的数据导出就非常的简单。

案例讲解

假设你已经按照上面这篇文章安装好了驱动,并能成功加载数据到数据库中,那么下面将介绍如何在 SSIS 中将数据导出到 Office Excel 2013 中。只有这个驱动安装好了,下面在连接到 Excel 2013 文件的时候才不会出现报错信息。

我的测试数据源,大概有1W8K 多行数据。

先建好这个 Excel 文件,并且最好指定好 Sheet 页的名称 Customer;在第一行的位置指定好列标题,即需要被导出的列名称。其实这个很好理解,之所以这么提前创建好,是因为它具备一定的格式,像一个小数据库表一样有行和列的概念。

数据源的连接就不再提了,选择好 Excel Destination。

在 Excel Connection Manager 处选择新建一个链接管理器,选择好目标 Excel 并勾选中第一行是列标题。

这时就能看到刚才创建好的 Sheet 列名称了。

然后是列的 Mapping 关系,这样就类似于数据源对数据源,表对表,列对列就全部建立好对应关系了。

保存并执行包,有 18484 条数据导出了。

包执行的同时,Excel 的数据就已经在自动增长了,检查一下条数也是正确的。

所以如果是连接的问题,可以认真参照这一篇文章 - SSIS 系列 - 通过 OLE DB 连接访问 Excel 2013 以及对不同 Sheet 页的数据处理 安装好驱动,以及要注意安装的是32位版本。

另外一个问题,可能有人在问可不可以在导出的时候创建这个文件,Excel 不需要实现存在,这个能不能实现? 包括自动创建 Sheet 名称以及列名称。

我没有实际操作过,因为从安装驱动的时候就可以看出它实际上给出的驱动是关于 Access 的驱动,也就是说这里的 Excel 相当于一个小型的数据库,Sheet 就是表。我们的数据导入导出都需要从数据源到数据源的对应,表对表的对应,列到列的对应,因此这些文件以及表名应该事先定义好。

可不可以动态创建 Excel,然后再导出数据 - 可以。

可以先通过 Script Task C#脚本创建好 Excel 文件,包括 Sheet 名和列名,然后再导出数据到 Excel 文件中去的。Excel 文件名称是按时间+表名命名的,每天都导出一个,所以在程序中创建,就不用手工创建了。

更多 BI 文章请参看 BI 系列随笔列表 (SSIS, SSRS, SSAS, MDX, SQL Server) 如果觉得这篇文章看了对您有帮助,请帮助推荐,以方便他人在 BIWORK 博客推荐栏中快速看到这些文章。

微软BI 之SSIS 系列 - 导出数据到 Excel 2013 的实现的更多相关文章

  1. 微软BI 之SSIS 系列 - 在 SSIS 中导入 ACCESS 数据库中的数据

    开篇介绍 来自 天善学院 一个学员的问题,如何在 SSIS 中导入 ACCESS 数据表中的数据. 在 SSIS 中导入 ACCESS 数据库数据 ACCESS 实际上是一个轻量级的桌面数据库,直接使 ...

  2. 微软BI 之SSIS 系列 - 使用 Script Component Destination 和 ADO.NET 解析不规则文件并插入数据

    开篇介绍 这一篇文章是 微软BI 之SSIS 系列 - 带有 Header 和 Trailer 的不规则的平面文件输出处理技巧 的续篇,在上篇文章中介绍到了对于这种不规则文件输出的处理方式.比如下图中 ...

  3. 微软BI 之SSIS 系列 - 再谈Lookup 缓存

    开篇介绍 关于 Lookup 的缓存其实在之前的一篇文章中已经提到了 微软BI 之SSIS 系列 - Lookup 组件的使用与它的几种缓存模式 - Full Cache, Partial Cache ...

  4. 微软BI 之SSIS 系列 - 使用 Script Task 访问非 Windows 验证下的 SMTP 服务器发送邮件

    原文:微软BI 之SSIS 系列 - 使用 Script Task 访问非 Windows 验证下的 SMTP 服务器发送邮件 开篇介绍 大多数情况下我们的 SSIS 包都会配置在 SQL Agent ...

  5. 微软BI 之SSIS 系列 - 数据仓库中实现 Slowly Changing Dimension 缓慢渐变维度的三种方式

    开篇介绍 关于 Slowly Changing Dimension 缓慢渐变维度的理论概念请参看 数据仓库系列 - 缓慢渐变维度 (Slowly Changing Dimension) 常见的三种类型 ...

  6. 微软BI 之SSIS 系列 - Lookup 中的字符串比较大小写处理 Case Sensitive or Insensitive

    开篇介绍 前几天碰到这样的一个问题,在 Lookup 中如何设置大小写不敏感比较,即如何在 Lookup 中的字符串比较时不区分大小写? 实际上就这个问题已经有很多人提给微软了,但是得到的结果就是 C ...

  7. 微软BI 之SSIS 系列 - 带有 Header 和 Trailer 的不规则的平面文件输出处理技巧

    案例背景与需求介绍 之前做过一个美国的医疗保险的项目,保险提供商有大量的文件需要发送给比如像银行,医疗协会,第三方服务商等.比如像与银行交互的 ACH 文件,传送给协会的 ACH Credit 等文件 ...

  8. 微软BI 之SSIS 系列 - MVP 们也不解的 Scrip Task 脚本任务中的一个 Bug

    开篇介绍 前些天自己在整理 SSIS 2012 资料的时候发现了一个功能设计上的疑似Bug,在 Script Task 中是可以给只读列表中的变量赋值.我记得以前在 2008 的版本中为了弄明白这个配 ...

  9. 微软BI 之SSIS 系列 - 通过 OLE DB 连接访问 Excel 2013 以及对不同 Sheet 页的数据处理

    文章更新历史 2014年9月7日 - 加入了部分更新内容,在文章最后提到了关于不同 Office Excel 版本间的连接问题. 开篇介绍 这篇文章主要总结在 SSIS 中访问和处理 Excel 数据 ...

随机推荐

  1. 性能测试十六:liunx下jmete配置环境变量

    修改环境变量后就不用每次手动输入路径,省时省事,减少命令长度和出错率 按Ctrl+L可进行翻页,翻页到最后一行,此处有java的环境变量 添加jmeter的目录和bin目录 此时,虽修改成功,但是并未 ...

  2. [转] h5上传视频或文件编写

    Html5 finally solves an age old problem of being able to upload files while also showing the upload ...

  3. 小程序的POST接收不到参数

    这个文档上没有详细说明 在用POST的时候 header要这样写... method:"POST", header: { "Content-Type": &qu ...

  4. SQL存储过程使用参考代码

    存储过程   use EBuy go  --常用的系统存储过程  sp_addmessage  --将新的用户定义错误消息存储在SQL Server数据库实例中  sp_helptext  --显示用 ...

  5. wxpython安装,demo下载

    wxPython介绍      wxPython是Python语言的一套优秀的GUI图形库.wxPython可以很方便的创建完整的.功能键全的GUI用户界面. wxPython安装 本安装采用pip自 ...

  6. linux 之 汇编语言 的mov和movl sub 和subl add 和addl 的区别??

    AT&T汇编语言(Assembly Language)是UNIX下惯用的汇编语言(Assembly Language)各式 l,w,b是ATT汇编语言(Assembly Language)中用 ...

  7. POJ-1511 Invitation Cards (单源最短路+逆向)

    <题目链接> 题目大意: 有向图,求从起点1到每个点的最短路然后再回到起点1的最短路之和. 解题分析: 在求每个点到1点的最短路径时,如果仅仅只是遍历每个点,对它们每一个都进行一次最短路算 ...

  8. mac OS X下Java项目环境搭建+IntelliJ IDEA Jrebel插件安装与破解+Office 2016破解版安装

    一.mac OS X下Java项目环境搭建 因为某些原因新入手了台最新版的MacBook Pro,意味着今天要花一天时间安装各种软件以及项目环境搭建╮(╯▽╰)╭ 项目环境搭建步骤: 1.安装jdk ...

  9. ACM差分约束笔记

    https://www.cnblogs.com/31415926535x/p/10463112.html 很早之前学最短路的时候就看了一眼差分约束,,当时以为这种问题不怎么会出现,,而且当时为了只为了 ...

  10. 三篇文章带你极速入门php(二)之迅速搭建php环境

    前言 今天讲一下php在windows,mac,linux上的集成环境搭建,目标是简单快速,环境这个事得对号入座,windows用phpstudy,mac用mamp,linux用lnmp一键安装,直接 ...