Привет, у меня есть вложенный курсор с тремя уровнями на нем ...
DECLARE campaign_csr CURSOR FOR SELECT cid FROM tempCampaign;
DECLARE date_csr CURSOR FOR SELECT header,ranges FROM tempDate ORDER BY id;
DECLARE level_csr CURSOR FOR SELECT 1st,2nd,3rd FROM tempDispoLevels ORDER BY 1st,2nd;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET v_done := TRUE;
OPEN campaign_csr;
campaign_loop:LOOP
FETCH campaign_csr INTO xcid;
IF v_done THEN
CLOSE campaign_csr;
LEAVE campaign_loop;
END IF;
select "1";
OPEN date_csr;
date_loop: LOOP
FETCH date_csr INTO xheader,xranges;
IF v_done THEN
SET v_done := FALSE;
CLOSE date_csr;
LEAVE date_loop;
END IF;
select "2";
OPEN level_csr;
level_loop: LOOP
FETCH level_csr INTO x1level,x2level,x3level;
IF v_done THEN
SET v_done := FALSE;
CLOSE level_csr;
LEAVE level_loop;
END IF;
select "3";
END LOOP level_loop;
END LOOP date_loop;
END LOOP campaign_loop;
проблема в том, что внешний цикл (в данном случае campaign_loop) не читает все записи.Есть ли способ обойти это?Спасибо.