首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DataStage和文件格式

DataStage和文件格式
EN

Stack Overflow用户
提问于 2022-05-31 14:36:51
回答 1查看 184关注 0票数 2

有人知道我如何在DataStage作业中确定输入顺序文件是否有MicroSoft或Unix的EOL标记,这样它就可以将路径导向作业的其余部分?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-02 10:17:21

如果您只想确保可以读取所有数据,而不管行尾是什么,那么在一个工作中这样做可能是有用的,而不是为每个DOS和UNIX文件维护单独的作业。因此,这个答案不符合确切的问题,但可能仍然是答案。

顺序文件阶段中,您可以定义一个筛选器 sed 's/\r//'来将DOS (\r\n)换行(\r\n)转换为UNIX换行符(\n)。

在“格式”选项卡中,将UNIX newline定义为记录分隔符。

请注意,在顺序文件中定义筛选器时,它有一些缺点,

  • 选项First Line is Column Names在使用筛选器时不可用。如果输入文件的第一行中有列名,则需要通过使用sed 's/\r//' | tail -n +2

命令扩展筛选器来手动删除它

  • 选项Report Progress在使用筛选器时不可用。您可能希望将列定义中的最后一列的类型设置为VarChar或NVarChar,我看到了将固定长度类型(如NChar或Char )定义为上一列类型的奇怪行为。虽然我没有对此做过更深入的研究,但我相信这与使用过滤器有关。

在DS 11.7.1中测试

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72449769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档