雪花 sp Javascript
Snowflake sp Javascript
create or replace procedure test_09171(c_custkey varchar(25)
, c_mktsegment varchar(25)
, cname varchar(25)) returns string not null language javascript execute as owner as $$
var sqlquery="";>
var VMAJOR="";
var VMINOR="";
try {
IF (C_MKTSEGMENT IS NULL OR CNAME IS NULL OR C_MKTSEGMENT =' ' OR CNAME =' ')
{
var sql_command =`SELECT C_MKTSEGMENT,cname
from customers
WHERE ccustkey=C_CUSTKEY`;
var rs=snowflake.createStatement( {sqlText: sql_command});
var result_set1 = rs.execute();
while(result_set1.next()){
VMAJOR =result_set1.getColumnValue(1);
return C_MKTSEGMENT;
VMINOR =result_set1.getColumnValue(1);
return CNAME;
}
} return "succeeded" }
catch(error)
{
return error.message
} $$;
在尝试执行如下过程时
call test_09171('1369097','','Customer#001369097');
我遇到了这个错误
JavaScript compilation error: Uncaught SyntaxError: missing ) after argument list in TEST_09171 at ' IF(C_MKTSEGMENT is null)' position 7
您可以尝试使用 CALLED ON NULL INPUT
更多详情:https://docs.snowflake.com/en/sql-reference/sql/create-procedure.html#optional-parameters
这里有一个大于号需要删除:
var sqlquery="";>
这一行应该是 JavaScript 但它写成了 SQL:
IF (C_MKTSEGMENT IS NULL OR CNAME IS NULL OR C_MKTSEGMENT =' ' OR CNAME =' ')
应该在JavaScript:
if (C_MKTSEGMENT == null || CNAME == null || C_MKTSEGMENT == ' ' || CNAME == ' ')
create or replace procedure test_09171(c_custkey varchar(25)
, c_mktsegment varchar(25)
, cname varchar(25)) returns string not null language javascript execute as owner as $$
var sqlquery="";>
var VMAJOR="";
var VMINOR="";
try {
IF (C_MKTSEGMENT IS NULL OR CNAME IS NULL OR C_MKTSEGMENT =' ' OR CNAME =' ')
{
var sql_command =`SELECT C_MKTSEGMENT,cname
from customers
WHERE ccustkey=C_CUSTKEY`;
var rs=snowflake.createStatement( {sqlText: sql_command});
var result_set1 = rs.execute();
while(result_set1.next()){
VMAJOR =result_set1.getColumnValue(1);
return C_MKTSEGMENT;
VMINOR =result_set1.getColumnValue(1);
return CNAME;
}
} return "succeeded" }
catch(error)
{
return error.message
} $$;
在尝试执行如下过程时
call test_09171('1369097','','Customer#001369097');
我遇到了这个错误
JavaScript compilation error: Uncaught SyntaxError: missing ) after argument list in TEST_09171 at ' IF(C_MKTSEGMENT is null)' position 7
您可以尝试使用 CALLED ON NULL INPUT
更多详情:https://docs.snowflake.com/en/sql-reference/sql/create-procedure.html#optional-parameters
这里有一个大于号需要删除:
var sqlquery="";>
这一行应该是 JavaScript 但它写成了 SQL:
IF (C_MKTSEGMENT IS NULL OR CNAME IS NULL OR C_MKTSEGMENT =' ' OR CNAME =' ')
应该在JavaScript:
if (C_MKTSEGMENT == null || CNAME == null || C_MKTSEGMENT == ' ' || CNAME == ' ')