为什么在调用存储过程时出现语法错误?

时间:2016-08-31 07:11:50

标签: db2 db2-luw

我正在尝试使用Time变量调用存储过程作为参数。但每当我尝试调用该过程时,我会收到错误:

db2 'call PASS_FAIL_CHECKDATE('2014-01-21','13:42:25','CSS1',Null,'4500096651','10',Null)'
SQL0104N  An unexpected token ":42" was found following "CKDATE(2014-01-21,
13".  Expected tokens may include:  "+".  SQLSTATE=42601

我的程序输入参数是:

PASS_fail_checkdate (in post_date date,in post_time time,in destplant varchar(4), in destloc varchar(4), in transnum varchar(10), in translineitemnum varchar(6), in inboundconsignment varchar(35))

我不确定我的时间变量声明在程序中是否正确,或者我是否在程序中正确调用时间变量。

请给我相同的建议。

1 个答案:

答案 0 :(得分:0)

正如已经提供的那样,用语言来说,尝试下面的例子作为对OP中所记录的内容的修订,因为已经尝试但是失败了;即更改为使用双引号与撇号,指定为DB2 SQL语句字符串的分隔符:

db2 "call PASS_FAIL_CHECKDATE('2014-01-21','13:42:25','CSS1',Null,'4500096651','10',Null)"