mysql游标实现时当内部查询有一次未查询到结果时就自动退出循环解决办法

DECLARE done INT DEFAULT 0;  

 DECLARE cur2 cursor for SELECT  periodid,name,periodtype  from  edm_period  where  projectid =p_projectid ;


 DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;  


OPEN cur2;

     lp1:LOOP  
        FETCH cur2 INTO v_periodid,v_purname,v_periodtype;  


        IF done=1 THEN  
          LEAVE lp1;  
        END IF;  
        select  max(periodseq) into v_maxseq  from  edm_form_status  where projectid=p_projectid and periodid=v_periodid  and formid=0;
        
        set done=0;
      end Loop lp1;

close cur2;


解决办法就是在每次循环执行结束时加上set done=0; 如上代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值