ursores múltiplos em loops aninhados no MyS

Desejo fazer algo que pareça um pouco complicado no MySQL. Na verdade, desejo abrir um cursor, fazer um loop e, nesse loop, abrir um segundo cursor usando os dados da busca anterior a ser executada e repetir novamente os resultados.

  DECLARE idind INT;
  DECLARE idcrit INT;
  DECLARE idindid INT;
  DECLARE done INT DEFAULT 0;
  DECLARE done2 INT DEFAULT 0;
  DECLARE curIndicateur CURSOR FOR SELECT id_indicateur FROM indicateur;
  DECLARE curCritereIndicateur CURSOR FOR SELECT C.id_critere FROM critere C where C.id_indicateur=idind;
  DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;

  set idindid=54;
  OPEN curIndicateur;
  REPEAT
    FETCH curIndicateur INTO idind;
    open curCritereIndicateur;
    REPEAT
      FETCH curIndicateur INTO idcrit;
      INSERT INTO SLA_DEMANDE_STATUS (iddemande,idindicateur,indicateur_status,progression) values('0009',idcrit,'OK',10.0);
    UNTIL done END REPEAT;
    close curCritereIndicateur;
  UNTIL done END REPEAT;
  CLOSE curIndicateur;

Na verdade, como fazer 'Até feito' de maneira diferente para os dois cursores, porque você só pode declarar um manipulador para SQLSTATE? Se o primeiro terminar, o segundo também termin

questionAnswers(5)

yourAnswerToTheQuestion