JavaScript
x
26
26
1
create or replace procedure test_09171(c_custkey varchar(25)
2
, c_mktsegment varchar(25)
3
, cname varchar(25)) returns string not null language javascript execute as owner as $$
4
var sqlquery="";>
5
var VMAJOR="";
6
var VMINOR="";
7
try {
8
IF (C_MKTSEGMENT IS NULL OR CNAME IS NULL OR C_MKTSEGMENT =' ' OR CNAME =' ')
9
{
10
var sql_command =`SELECT C_MKTSEGMENT,cname
11
from customers
12
WHERE ccustkey=C_CUSTKEY`;
13
var rs=snowflake.createStatement( {sqlText: sql_command});
14
var result_set1 = rs.execute();
15
while(result_set1.next()){
16
VMAJOR =result_set1.getColumnValue(1);
17
return C_MKTSEGMENT;
18
VMINOR =result_set1.getColumnValue(1);
19
return CNAME;
20
}
21
} return "succeeded" }
22
catch(error)
23
{
24
return error.message
25
} $$;
26
While trying to execute the proc as below
JavaScript
1
2
1
call test_09171('1369097','','Customer#001369097');
2
I am getting this error
JavaScript compilation error: Uncaught SyntaxError: missing ) after argument list in TEST_09171 at ‘ IF(C_MKTSEGMENT is null)’ position 7
Advertisement
Answer
You have a greater than symbol here that you need to remove:
JavaScript
1
2
1
var sqlquery="";>
2
This line is supposed to be JavaScript but it’s written as SQL:
JavaScript
1
2
1
IF (C_MKTSEGMENT IS NULL OR CNAME IS NULL OR C_MKTSEGMENT =' ' OR CNAME =' ')
2
It should be in JavaScript:
JavaScript
1
2
1
if (C_MKTSEGMENT == null || CNAME == null || C_MKTSEGMENT == ' ' || CNAME == ' ')
2