数据工厂中的制表符分隔符

时间:2019-10-16 08:45:02

标签: azure delimiter azure-data-factory azure-data-factory-2

尝试解析Data Factory中配置文件中的数据时遇到问题。 我正在使用配置文件,这些项目在复制活动中被调用。我们可以选择对数据集中的“列定界符”字段进行参数化,因此我正在使用文件中的值(因为在某些情况下为“;”,在其他情况下为“ \ t”)。 当定界符为分号时,它可以正常工作,但是当它为\ t时,出现以下错误:

  

复制活动不支持多字符或无列定界符。

当我检查进入该字段的值时,我发现该值不是文件(\t)中的值,而是\\t。 您是否知道这种行为的原因或此行为是否有转义字符?我也尝试使用ASCII代码(\0009),但遇到相同的错误-它不知道如何进行转换。非常感谢!

4 个答案:

答案 0 :(得分:0)

基于official document中的语句,目前,mapping data flow仅支持多字符定界符,Copy activity不支持多字符定界符。

enter image description here

您可以尝试使用mapping data flows,它也是ADF中设计的数据转换。请在此处查看更多详细信息:https://docs.microsoft.com/en-us/azure/data-factory/concepts-data-flow-overview

任何担心,请告诉我。

答案 1 :(得分:0)

您能否尝试传递从文本编辑器复制的真实标签,例如-''。

这被认为是有效的。 如果分隔符中没有参数化,则可以通过GUI甚至代码来完成。

答案 2 :(得分:0)

简短的答案是,在UI中输入制表符值时,请勿使用\t,而应使用" "。 在空引号之间,我粘贴了一个实际的制表符。

答案 3 :(得分:0)

您应该使用t而不是\ t。 Data Factory用\ t本身替换t。这就是为什么\ t最终为\ t