软件开发Db2

DB2中如何用一个存储过程调用其他存储过程?

我的问题是,如何用一个主存储过程将其他存储过程批量调用起来,我用一个变量赋予SQL,即SET V_SQL='CAL DSHUSR.'||V_PRO_NAME ||'('||V_RPTDATE ||')',我这样写报错了,求各位DB2同胞帮忙解答一下,谢谢...显示全部

我的问题是,如何用一个主存储过程将其他存储过程批量调用起来,我用一个变量赋予SQL,即SET V_SQL='CAL DSHUSR.'||V_PRO_NAME ||'('||V_RPTDATE ||')',我这样写报错了,求各位DB2同胞帮忙解答一下,谢谢

收起
参与11

查看其它 1 个回答彼此在na的回答

彼此在na彼此在na软件开发工程师北京中软国际信息技术有限公司

CREATE PROCEDURE P_FIX_ORDER_INFO (
IN "BEGIN_IN_DATE" VARCHAR(10) ,-- 开始日期
IN "END_IN_DATE" VARCHAR(10) -- 结束日期
)
DYNAMIC RESULT SETS 1
P1: BEGIN
DECLARE V_BEGIN_DATE date;
DECLARE V_END_DATE date;

set V_BEGIN_DATE = to_date(BEGIN_IN_DATE,'YYYY-MM-DD');
set V_END_DATE = to_date(END_IN_DATE,'YYYY-MM-DD');

while V_BEGIN_DATE <= V_END_DATE do

call P_IMPORT_ORDERINFO(V_BEGIN_DATE);
call P_ORDER_SELL_DAY_CLIENT_CIG(V_BEGIN_DATE);
call P_ORDER_SELL_DAY_CLIENT(V_BEGIN_DATE);

set V_BEGIN_DATE = V_BEGIN_DATE + 1 day;
end while;
END P1 ;

互联网服务 · 2017-11-15
浏览2999
  • zd  zd
    谢谢,如果我把存储过程名放在一个游标里循环调用,不要一个一个CALL,应该怎么写呢?
    2017-11-15

回答者

彼此在na
软件开发工程师北京中软国际信息技术有限公司
擅长领域: 存储灾备服务器

回答状态

  • 发布时间:2017-11-15
  • 关注会员:4 人
  • 回答浏览:2999
  • X社区推广