【问题标题】:How to call stored procedure inside another stored procedure and set the values as in variable in DB2如何在另一个存储过程中调用存储过程并将值设置为 DB2 中的变量
【发布时间】:2017-01-04 05:56:11
【问题描述】:

我需要将存储过程调用到另一个存储过程中,并返回存储在 db2 变量中的值。

谢谢

【问题讨论】:

    标签: sql stored-procedures db2


    【解决方案1】:

    一个例子可能是这个:

     DECLARE STMT STATEMENT;
     PREPARE STMT FROM 'CALL MODIFY_DESCENDANTS (?, ?)';
     EXECUTE STMT USING LOG_ID, LEVEL;
    

    取自 log4db2 - https://github.com/angoca/log4db2/blob/master/src/main/sql-pl/03-UtilityBody.sql#L729

    如果存储过程返回一个结果集,并且您想从中获取值,那么您需要调用存储过程并使用关联和分配语句。例如,您可以访问https://www.toadworld.com/platforms/ibmdb2/w/wiki/7460.call-allocate-and-associate

    CALL EMPR;
    ASSOCIATE RESULT SET LOCATOR (LOC1) WITH PROCEDURE EMPR;
    ALLOCATE C1 CURSOR FOR RESULT SET LOC1;
    

    【讨论】:

      猜你喜欢
      • 2011-10-26
      • 1970-01-01
      • 2012-06-20
      • 1970-01-01
      • 1970-01-01
      • 2010-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多