【问题标题】:SQLCODE=-104, SQLSTATE=42601, SQLERRMC=select Con_Gruop_Name from;t vparam = grpName; ;<delete>SQLCODE=-104,SQLSTATE=42601,SQLERRMC=选择 Con_Gruop_Name from;t vparam = grpName; ;<删除>
【发布时间】:2017-02-06 06:39:00
【问题描述】:

我已经检查了这个“SQLCODE=-104, SQLSTATE=42601”这个错误代码,但仍然找不到上面的过程有什么问题。 我也执行了查询,它运行良好。运行 proc 时出现以下错误。
** SQLCODE=-104, SQLSTATE=42601, SQLERRMC=选择 Con_Gruop_Name from;t vparam = grpName; ;**

create OR REPLACE PROCEDURE getConGroup(in grpName varchar(100))
begin 
declare vparam varchar(100);
set vparam = grpName;
select Con_Gruop_Name from Grp_Table where Gruop_Name=vparam;
end

【问题讨论】:

  • "哪里 Gruop_Name=vparam" ?可能是您的意思是“其中 Group_Name=vparam;”

标签: stored-procedures db2


【解决方案1】:

1) 验证 Con_Gruop_Name 和 Gruop_Name 是正确的名称,我想它的 Con_Group_Name 和 Group_Name

2) 您可以在查询中直接使用参数

3) 你必须使用游标来选择返回结果,像这样

4) 可能您应该将库添加到您的选择“... from yourlib.yourtable where ...”中

CREATE PROCEDURE getConGroup (IN grpName varchar(100))
RESULT SETS 1
LANGUAGE SQL

P1: BEGIN

    DECLARE cursor1 CURSOR WITH RETURN FOR
    select Con_Gruop_Name from Grp_Table where Gruop_Name=grpName ;

    OPEN cursor1;
END P1

【讨论】:

  • 列名拼写错误,所以表或列名没有错误,
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-29
相关资源
最近更新 更多