gpt4 book ai didi

azure - 在数据工厂中映射数据流时出现无转义字符错误

转载 作者:行者123 更新时间:2023-12-03 02:36:40 28 4
gpt4 key购买 nike

TLDR:为什么 Azure 数据工厂数据流不允许没有转义字符?

我们有来自不太可能更新它的源的不良源数据(这是我表达这一点的最好方式)。它们有多个列,其中列中的值为 01F\或 8239\,并且反斜杠在其规范中写入为值的一部分,而不是像整个世界中标准化的那样被视为转义字符。

文件的整体设置是用逗号分隔,每列的内容都在“”中,并且我们有所有正常的换行符。只是反斜杠不符合标准。例如

"Column 1","Column 2","Column 3","Column 4"
"John","01F\","34","NY"
"Jane","3K","8239\","CA"

|---------------------|------------------|------------------|------------------|
| Column 1 | Column 2 | Column 3 | Column 4 |
|---------------------|------------------|------------------|------------------|
| "John" | "01F\" | "34" | "NY" |
|---------------------|------------------|------------------|------------------|
| "Jane" | "3K" | "8239\" | "CA" |
|---------------------|------------------|------------------|------------------|


在Azure数据工厂中,我们试图看看是否可以让它忽略\作为转义字符。 (仅供引用,当我们将其视为转义字符时,它将把带有反斜杠的列后面的列拉入一列)。我们可以在数据集中看到在哪里设置它,这样就没有转义字符。

enter image description here

但是,当我们将该数据集添加到数据流并尝试预览其中的数据时,我们会收到一条错误,指出数据流中不能没有转义字符,并且引号字符不应该是引号字符当我们没有转义字符时。

enter image description here

如果我们尝试返回并且不设置引号字符(我们实际上不想这样做,只是为了测试这是否能让它工作),我们会得到一个数据流不能有的错误没有转义或引号字符。

enter image description here



如果这两个选项在 Azure 数据工厂中不起作用,那么提供这两个选项的目的是什么?或者我们是否需要在其他地方更新其他设置才能使其正常工作?

谢谢你!!

编辑:我忘了提及,我们还尝试查看是否可以替换数据流列映射部分中的反斜杠。我们尝试使用replace()函数,但无法让它工作(不断出现语法错误)。
ORIGINAL working code for column: trim(toString($$))
ATTEMPTED WORKAROUNDS:
replace(trim(toString($$)),'\','-')
trim(replace(toString($$),'\','-')
trim(toString(replace($$),'\','-'))

最佳答案

我只是想分享 Microsoft 论坛上的一位用户提供的答案,该答案最终有效。

我们在数据集设置中将转义字符从\更改为^(只有在确认^字符在任何地方都没有以任何方式使用后才这样做)。我们没有在列的映射中应用替换函数,因为不幸的是我们需要在这些列中保留\字符。但它确实有效,我们的数据现在正在按照我们需要的方式流动(尽管这些不是数据管理的最佳实践)。

https://learn.microsoft.com/en-us/answers/questions/48595/error-with-no-escape-character-in-mapping-data-flo.html

关于azure - 在数据工厂中映射数据流时出现无转义字符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62939724/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com