繁体   English   中英

无法使用多行 SQL 代码调用过程。语法是什么?

[英]Can't call a procedure with multiline SQL code .. what is the syntax?

如果不在每行之后放置 \,我无法获得在过程/javascript 中工作的多行 SQL 语句。

这有效:

CREATE or replace PROCEDURE PR_DELETEME()
RETURNS VARCHAR
LANGUAGE javascript
AS
$$
var rs = snowflake.execute( { sqlText: 
  'create or replace table deleteme as select sysdate() as my_date;'
   } );
return 'Done.';
$$;

这失败了:

CREATE or replace PROCEDURE PR_DELETEME()
RETURNS VARCHAR
LANGUAGE javascript
AS
$$
var rs = snowflake.execute( { sqlText: 
  'create or replace table deleteme as
   select sysdate() as my_date;'
   } );
return 'Done.';
$$;

呼叫 PR_DELETEME(); 给...

 JavaScript compilation error: Uncaught SyntaxError: Invalid or unexpected token in PR_DELETEME at ' 'create or replace table deleteme as' position 6

我真的不想把 \ 放在每行的末尾。

使用“反引号”而不是单引号或双引号。 下面现在有效:

CREATE or replace PROCEDURE PR_DELETEME()
RETURNS VARCHAR
LANGUAGE javascript
AS
$$
var rs = snowflake.execute( { sqlText: 
  `create or replace table deleteme as
   select sysdate() as sysd;`
   } );
return 'Done.';
$$;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM