摘要:
开篇介绍SQL Profilling Task 可能我们很多人都没有在 SSIS 中真正使用过,所以对于这个控件的用法可能也不太了解。那我们换一个讲法,假设我们有这样的一个需求 - 需要对数据库表中的一些数据做一些数据分析,比如统计一下数据表中各列中实际数据的长度,各长度区间范围;比如统计一下各数据... 阅读全文
随笔分类 - 01 - SSIS
微软BI 之SSIS 系列 - 再谈Lookup 缓存
2015-01-24 15:37 by BIWORK, 4605 阅读, 收藏, 编辑
摘要:
开篇介绍关于 Lookup 的缓存其实在之前的一篇文章中已经提到了微软BI 之SSIS 系列 - Lookup 组件的使用与它的几种缓存模式 - Full Cache, Partial Cache, NO Cache但是还是可能遗漏的部分内容,因此在这里重新总结并补充一下。这是第一篇,还是从理论的角... 阅读全文
微软BI 之SSIS 系列 - ETL 转换时关于 Code Page (1252 and 936) 转换错误的原因和解决方法
2015-01-18 17:04 by BIWORK, 12585 阅读, 收藏, 编辑
摘要:
开篇介绍最近经常碰到在 ETL 练习中出现这种转换失败的问题,试了多种方式,同样的代码同样的源结构和表结构但是一直不能成功执行,包报错。一般有这么几种错误:Error at DST_LOAD_DATA_FROM_FILE [OLE_DST_EMPLOYEE[109]]: The column "Fi... 阅读全文
微软BI 之SSIS 系列 - 2008 版本中变量 Int64 无法保存 bigint 类型数据的BUG
2015-01-15 23:54 by BIWORK, 2522 阅读, 收藏, 编辑
摘要:
开篇介绍这是今天在帮别人看一个 2008R2 版本的项目时发现的一个 Bug,这个 Bug 在 SQL SERVER 2012 有的版本中可能已经解决,但在论坛上看到有的仍然存在。在 SQL SERVER 2008 R2 版本中,比如从一个数据库表中取一个 BIGINT 类型的数据,赋值给一个 In... 阅读全文
微软BI 之SSIS 系列 - 在 SQL 和 SSIS 中实现行转列的 PIVOT 透视操作
2015-01-01 10:49 by BIWORK, 5036 阅读, 收藏, 编辑
摘要:
开篇介绍记得笔者在 2006年左右刚开始学习 SQL Server 2000 的时候,遇到一个面试题就是行转列,列转行的操作,当时写了很长时间的 SQL 语句最终还是以失败而告终。后来即使能写出来,也是磕磕碰碰的,虽然很能锻炼 SQL 功底,每次都要挣扎一番,溺水的感觉。记得SQL Server 2... 阅读全文
微软BI 之SSIS 系列 - 在 SSIS 中导入 ACCESS 数据库中的数据
2014-12-07 21:10 by BIWORK, 3174 阅读, 收藏, 编辑
摘要:
开篇介绍来自 天善学院一个学员的问题,如何在 SSIS 中导入 ACCESS 数据表中的数据。在 SSIS 中导入 ACCESS 数据库数据ACCESS 实际上是一个轻量级的桌面数据库,直接使用文件形式存储。在国内大量使用 ACCESS 作为 BI 数据源并不多,但是在国外特别是美国使用的还比较多,... 阅读全文
微软BI 之SSIS 系列 - 使用 Script Component Destination 和 ADO.NET 解析不规则文件并插入数据
2014-12-06 23:24 by BIWORK, 2551 阅读, 收藏, 编辑
摘要:
开篇介绍这一篇文章是 微软BI 之SSIS 系列 - 带有 Header 和 Trailer 的不规则的平面文件输出处理技巧的续篇,在上篇文章中介绍到了对于这种不规则文件输出的处理方式。比如下图中的这种不规则文件,第一行,第二行 Header 部分,第三行的内容 Content 部分,最后一行的 T... 阅读全文
微软BI 之SSIS 系列 - Precedence Constraint 详解优先约束的使用
2014-11-02 23:15 by BIWORK, 6980 阅读, 收藏, 编辑
摘要:
开篇介绍Precedence Constraint 优先约束 - 在控制流中使用,用来链接控制流中各种 Task,Container,并且要求满足一定的条件才能执行相关联的 Task 或者 Container。 比如下图中,第一个 Execute SQL Task 叫做 Precedence-Exe... 阅读全文
微软BI 之SSIS 系列 - MVP 们也不解的 Scrip Task 脚本任务中的一个 Bug
2014-10-15 10:15 by BIWORK, 2931 阅读, 收藏, 编辑
摘要:
开篇介绍前些天自己在整理 SSIS 2012 资料的时候发现了一个功能设计上的疑似Bug,在 Script Task 中是可以给只读列表中的变量赋值。我记得以前在 2008 的版本中为了弄明白这个配置,还特意测试过这个细节,获取错误并理解了这个功能。但是现在回去再次测试 2008 的版本时,发现这个... 阅读全文
微软BI 之SSIS 系列 - 使用 Script Task 访问非 Windows 验证下的 SMTP 服务器发送邮件
2014-09-29 10:20 by BIWORK, 4227 阅读, 收藏, 编辑
摘要:
开篇介绍大多数情况下我们的 SSIS 包都会配置在 SQL Agent Job 中周期性的按计划执行,比如每天晚上调用 SSIS 包刷新数据,处理 Cube 等。一旦 SSIS 包中出现任何异常,报错,那么配置在 SQL Agent Job 中的通知,邮件提醒就会把这些错误信息发邮件到指定的用户或者... 阅读全文
微软BI 之SSIS 系列 - XML Task 中XSLT 样式表转换错误记录
2014-09-27 16:43 by BIWORK, 1028 阅读, 收藏, 编辑
摘要:
开篇介绍此文章专门记录 XSLT 样式表转换过程中的语法问题错误一 值与属性的倒置修改了几次样式表,但还是一如既往的报错,报错信息如下:[XML Task] Error: An error occurred with the following error message: "Attribute a... 阅读全文
微软BI 之SSIS 系列 - Execute SQL Task 中的 Single Row 与 Full Result Set 的处理技巧
2014-09-04 17:18 by BIWORK, 6446 阅读, 收藏, 编辑
摘要:
开篇介绍Execute SQL Task 这个控件在微软BI ETL 项目中使用的频率还是非常高的,也是大部分入门 SSIS 初学者最早接触到的几个控制流控件。我们通常使用 Execute SQL Task 的场景包含但不止于以下几类:在从源端加载数据到 Staging 表之前使用 Execute ... 阅读全文
微软BI 之SSIS 系列 - 带有 Header 和 Trailer 的不规则的平面文件输出处理技巧
2014-09-02 23:44 by BIWORK, 2794 阅读, 收藏, 编辑
摘要:
案例背景与需求介绍之前做过一个美国的医疗保险的项目,保险提供商有大量的文件需要发送给比如像银行,医疗协会,第三方服务商等。比如像与银行交互的 ACH 文件,传送给协会的 ACH Credit 等文件。这些文件格式在美国都是开放的,通用的,可以直接到相关网站下载。也就是说像银行,协会等他们接受这种固定... 阅读全文
微软BI 之SSIS 系列 - 对于平面文件中 NULL 值处理过程中容易极易混淆的几个细节
2014-08-21 22:22 by BIWORK, 3589 阅读, 收藏, 编辑
摘要:
开篇介绍最近有人问我有关文件处理中空值处理的相关问题: OLE DB Destination 中的 Keep Nulls 如何控制 NULL 值的显示?为什么选中了 Keep Nulls 但是数据库中没有 NULL 值? 为什么在 Flat File Source 中勾选上了 Retain null... 阅读全文
微软BI 之SSIS 系列 - Lookup 中的字符串比较大小写处理 Case Sensitive or Insensitive
2014-08-19 12:52 by BIWORK, 2695 阅读, 收藏, 编辑
摘要:
开篇介绍前几天碰到这样的一个问题,在 Lookup 中如何设置大小写不敏感比较,即如何在 Lookup 中的字符串比较时不区分大小写?实际上就这个问题已经有很多人提给微软了,但是得到的结果就是 Closed and Won’t fix。 说白了,这个就是 By Design,包括到现在的 2012 ... 阅读全文
微软BI 之SSIS 系列 - 平面文件格式的区别(Delimited,Fixed width,Ragged Right, Fixed width ...)
2014-08-11 22:28 by BIWORK, 4685 阅读, 收藏, 编辑
摘要:
开篇介绍SSIS 中处理文件,一般在描述输出平面文件格式的时候通常会出现以下几种选项:Delimited - 默认输出列使用逗号分隔,也可以选择其它的诸如 | ,或者 Tab 等。Fixed Width - 列定长输出,固定长度,但不换行。Fixed Width with row delimiter... 阅读全文
微软BI 之SSIS 系列 - 导出数据到 Excel 2013 的实现
2014-04-18 23:26 by BIWORK, 8623 阅读, 收藏, 编辑
摘要:
开篇介绍碰到有几个朋友问到这个问题,比较共性,就特意写了这篇小文章说明一下如何实现在 SSIS 中导出数据到 Office Excel 2013 中。通常情况下 2013 以前的版本大多没有问题,但是到 2013 就可能在建立连接管理器的时候出现链接失败。建议在看这一篇文章之前,如果有导出数据到 E... 阅读全文
如何管理和记录 SSIS 各个 Task 的开始执行时间和结束时间以及 Task 中添加|删除|修改的记录数
2014-04-18 16:19 by BIWORK, 5973 阅读, 收藏, 编辑
摘要:
开篇语在这篇日志中如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架我介绍到了包级别的日志管理框架,那么这个主要是针对包这一个层级的 Log 信息,包括包开始执行和结束时间,以及各个包的执行成功或者失败状态。但是我们可以更加深一层次的将日志记录 Logging 以及数据信息 Aud... 阅读全文
如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架
2014-02-19 02:00 by BIWORK, 13862 阅读, 收藏, 编辑
摘要:
一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整。因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑。因此,我选择我觉得比较通用的 LOG 部分,在这里分享一下给大家,希望对大家在设计 ETL 的日志系统时有所启发和帮助。当然在这里要区分... 阅读全文
微软BI 之SSIS 系列 - 在 SSIS 中将指定目录下的所有文件分类输出到不同文件夹
2014-01-13 23:28 by BIWORK, 6153 阅读, 收藏, 编辑
摘要:
开篇介绍比如有这样的一个需求,旧的一个业务系统通常将产出的文件输出到同一个指定的目录下的不同子目录,输出的文件类型有 XML,EXCEL, TXT 这些不同后缀的文件。现在需要在 SSIS 中将它们分类整理到不同的文件夹下,比如 XML 的全部拷贝到 A 文件夹, EXCEL 全部拷贝到 B 文件夹... 阅读全文