不允许进入条款

普拉布

我创建了用于选择的动态DB2存储过程。我将使用此通用查询通过传递参数来执行多个select语句。

SET V_SELECT =                   
  'SELECT ' || SELECT_FIELDS ||  
  ' INTO '  || INTO_FIELDS   ||  
  ' FROM '  || TABLE_NAME    ||  
  ' WHERE ' || WHERE_CLAUSE  ||  
  ' WITH UR';    
EXECUTE IMMEDIATE V_SELECT;     

下面是我的查询的外观。

   SELECT B.PROD_TYP  
   INTO HOST_VAR_PROD_TYP
   FROM TABLE_A   A
   INNER JOIN TABLE_B  B
   ON A.ROW_ID = B.ROW_ID
   WHERE A.PROD_CD = HOST_VAR_PROD_CD;

当我运行这个我得到

“不允许INTO条款”。

提前致谢。

马克·巴林斯坦

我手头没有DB2 for z / os,但是您应该执行以下操作:

  DECLARE V_STMT VARCHAR(200);
  DECLARE V_NAME VARCHAR(128);
  DECLARE V_COLCOUNT INT;

  SET V_NAME = 'SYSTABLES';
  SET V_STMT = 'SET ? = (SELECT COLCOUNT FROM SYSIBM.SYSTABLES WHERE CREATOR = ''SYSIBM'' AND NAME = ?)';
  PREPARE S1 FROM V_STMT;
  EXECUTE S1 INTO V_COLCOUNT USING V_NAME;

您需要SET声明。V_STMT根据您的需求创造价值。在1日?表示你进入的结果V_COLCOUNT,从你select第二个?表示您随V_NAME变量传递的参数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章