USE DATABASE retail;
@log=EXTRACT id int,
item string
FROM "/Retailstock/stock.txt"
USING Extractors.Tsv();
INSERT INTO sales.stock
SELECT id, item FROM @log;
这是来自Azure数据湖分析课程的问题。我需要使用销售模式加载表sales.stock。 它给出了顶点错误和编码错误。
头部撞击2天后,我无法理解这个问题。感谢。
答案 0 :(得分:1)
可能是由于编码不匹配造成的。提取器的默认编码设置为UTF8,如果源文件的编码不同,则在提取期间将发生运行时错误。
您可以通过提供“encoding”参数来更改编码,例如:
USING Extractors.Text(encoding : Encoding.[ASCII]);
在此处详细了解支持的编码:Extractor parameters - encoding
答案 1 :(得分:0)
在我的情况下,在Extractors.Text()/ Extractors.Tsv()中将编码设置为ASCII不起作用。不知道为什么,因为该文件显然是ASCII编码。我必须手动将文件转换为UTF-8。