首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ADF触发ADL作业失败,语法错误

ADF触发ADL作业失败,语法错误
EN

Stack Overflow用户
提问于 2016-01-19 04:13:04
回答 1查看 375关注 0票数 4

我正在尝试运行一个在Visual中成功运行的作业。我想在ADF管道中运行它,但是作业失败了,语法错误。

代码语言:javascript
复制
ERRORID:  E_CSC_USER_SYNTAXERROR
SEVERITY:  Error
COMPONENT:  CSC
SOURCE:  USER
MESSAGE:  
syntax error. Expected one of: '[' end-of-file ALTER COMBINE CREATE DEPLOY DROP EXTRACT IF INSERT OUTPUT PROCESS REDUCE REFERENCE RESOURCE SELECT TABLE TRUNCATE UPDATE USE USING VIEW identifier quoted-identifier variable ';' '(' 

DETAILS:  
at token [], line 2
near the ###:
**************
DECLARE @outSlice string = "somepath.csv"; 
### USE DATABASE myDB;

//LOCAL    
//DECLARE @root string = @"some local path";

//CLOUD    
//DECLARE @root string = "adl://storeuri";    
DECLARE @root string = "wasb://container@account/";

//RUN MODE 0
//DECLARE @var2 int = 1;    
//DECLARE @var1 int = 1;
DECLARE @path1 string = @root + @"path1/xyz.csv"; 

编辑:我尝试了使用USE数据库语句,并将其注释掉,就像在这两种情况下above;###都出现在完全相同的位置一样。EDIT2:在脚本后面的@michael请求中添加了连续的代码行,在输出语句中使用参数@outSlice,如

代码语言:javascript
复制
OUTPUT @dataset
TO @outSlice
USING Outputters.Csv();

该参数在管道活动中确定。下面的片段:

代码语言:javascript
复制
       "type": "DataLakeAnalyticsU-SQL",
        "typeProperties": {
            "scriptPath": "script.usql",
            "scriptLinkedService": "storageXYX",
            "degreeOfParallelism": 2,
            "priority": 0,
            "parameters": {
                "outSlice": "$$Text.Format('/Output/{0:yyyy}/{0:MM}/{0:dd}/{0:HH}/somefile.csv',SliceStart)"
            }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-19 22:10:40

在与Michael的离线对话中,我从脚本文件中删除了BOM,ADF作业成功运行。如果您正在使用Visual,请转到File->Advanced选项。在我的例子中,我不得不选择没有签名的UTF-8来删除BOM。再次谢谢你,迈克尔-里斯!

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

https://stackoverflow.com/questions/34868392

复制
相关文章

相似问题

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