微软BI 之SSIS 系列 - 平面文件格式的区别(Delimited,Fixed width,Ragged Right, Fixed width ...)
2014-08-11 22:28 BIWORK 阅读(4685) 评论(2) 编辑 收藏 举报开篇介绍
SSIS 中处理文件,一般在描述输出平面文件格式的时候通常会出现以下几种选项:
- Delimited - 默认输出列使用逗号分隔,也可以选择其它的诸如 | ,或者 Tab 等。
- Fixed Width - 列定长输出,固定长度,但不换行。
- Fixed Width with row delimiters - 其实就相当于 Ragged right,只不过换行符 CR+LF 的位置不同,这个是新的一列显示一个换行符。
- Ragged right - 和上面的这个格式区别就是 CR+LF 换行符处于最后一列的位置。
哪几种比较常用?
按我个人经验,常用的顺序应该是 -
Delimited -> Ragged right -> Fixed width with row delimiters -> Fixed width,其中 Fixed width 至今没有使用过。
Delimited
每一列输出的时候默认使用 ,号分隔,最后的一列跟换行符分隔。
输出文件的样式,并查看所有符号显示回车加换行 CR+LF -
Ragged right
列定长输出,因此列之间是没有分隔符的。
只有在最后一列的时候有回车换行符。
实际输出效果中最后一列跟回车换行符,还要注意的就是当输出的实际列的宽度只有5的时候,比如 False 长度为5,但是在定长的时候如果考虑输出列标题,是需要参考列标题的长度的,否则输出报错。
Fixed width with row delimiters
它和 Ragged Right 表现差不多,只不过最后一列是额外添加的一列,专门用来标识回车换行。
Fixed width
定长但是没有默认换行,这个效果就是所有数据一行展开。
总结
在我第一个 BI 项目中就有大量的这种类型的需求,比如像上面的两种定长输出和换行的位置,在有些输出文件格式中就有明确的要求和说明。通过理解以上几种文件输出格式,再以后碰到类似的需求的时候就很容易弄明白彼此之间的区别了。
更多 BI 文章请参看 BI 系列随笔列表 (SSIS, SSRS, SSAS, MDX, SQL Server) 如果觉得这篇文章看了对您有帮助,请帮助推荐,以方便他人在 BIWORK 博客推荐栏中快速看到这些文章。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 单线程的Redis速度为什么快?
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库