Curseurs multiples dans les boucles imbriquées dans MySQL

Je souhaite faire quelque chose qui semble un peu compliqué dans MySQL.
En fait, je souhaite ouvrir un curseur, faire une boucle, et dans cette boucle, ouvrir un deuxième curseur à l'aide des données de la précédente, extraction d'être exécuté, et re-boucle sur les résultats.

  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;

En fait, la façon de faire "Jusqu'à faire" différemment pour les deux curseurs, parce que vous ne pouvez déclarer un traiteur pour SQLSTATE?
Si la fin de la première, la deuxième se termine trop.

source d'informationauteur user5537