软件开发Db2

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

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

参与11

2同行回答

topzgmtopzgm课题专家组软件架构设计师People's Bank of China
试试sysproc.admin_cmd系统存储过程,应该可以迎合上述问题中提到的各个方面的需求。显示全部

试试sysproc.admin_cmd系统存储过程,应该可以迎合上述问题中提到的各个方面的需求。

收起
银行 · 2017-11-15
浏览2929
王磊磊 邀答
彼此在na彼此在na软件开发工程师北京中软国际信息技术有限公司
CREATE PROCEDURE P_FIX_ORDER_INFO (IN "BEGIN_IN_DATE" VARCHAR(10) ,-- 开始日期IN "END_IN_DATE" VARCHAR(10) -- 结束日期)DYNAMIC RESULT SETS 1P1: BEGINDECLARE V_BEGIN_DATE date;DECLARE V_END_DATE date;set V_BEGIN_DATE = to_date(BEGIN_IN_DATE,'YYYY-MM...显示全部

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
浏览2996
  • zd  zd
    谢谢,如果我把存储过程名放在一个游标里循环调用,不要一个一个CALL,应该怎么写呢?
    2017-11-15

提问者

zd
软件开发工程师xzjy
擅长领域: 存储关系型数据库服务器

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2017-11-14
  • 关注会员:4 人
  • 问题浏览:3550
  • 最近回答:2017-11-15
  • X社区推广