CREATE OR REPLACE PROCEDURE dbo.test()
RETURNS varchar null
LANGUAGE JAVASCRIPT
execute as caller
AS
$$
set MY_VAR =1;
return $MY_VAR;
$$
;
如果我执行以下操作,我将面临错误。消息如下所示调用dbo.test((;
//ERROR: JavaScript compilation error: Uncaught SyntaxError: Unexpected identifier in TEST at 'set MY_VAR =1;' position 4
CREATE OR REPLACE PROCEDURE test()
RETURNS float not null
LANGUAGE JAVASCRIPT
execute as caller
AS
$$
var MY_VAR =1.1;
return MY_VAR;
$$
;
call <database>.<schema>.test();
给出:
1.1
因此,如果您试图返回一个数值,我将其更改为float
而不是varchar
,但在测试以太之后,它就可以了。
但大多数情况下,我从set
更改为var
来声明您的变量。另一个有效的关键字是let
,它也起作用。