Por ejemplo
    
Código SQL:
Ver original- CREATE PROCEDURE curdemo() 
- BEGIN 
-   DECLARE done INT DEFAULT FALSE; 
-   DECLARE cur1 CURSOR FOR SELECT id,DATA FROM test.t1; 
-   DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; 
-   
-   OPEN cur1; 
-   
-   read_loop: LOOP 
-     FETCH cur1 INTO a, b; 
-     IF done THEN 
-       LEAVE read_loop; 
-     END IF; 
-     IF b < c THEN 
-       # AQUI HABRÏA UN PROBLEMA (POR EL DECLARE) 
-       DECLARE cur1 CURSOR FOR SELECT id,DATA FROM test.t1; 
-       . 
-       . 
-       . 
-     ELSE 
-       # AQUI TAMBIEN HABRÏA UN PROBLEMA (POR EL DECLARE) 
-       DECLARE cur1 CURSOR FOR CALL otra_funcion(param_de_primer_sql, param_de_primer_sql); 
-       . 
-       . 
-       . 
-     END IF; 
-   END LOOP; 
-   
-   CLOSE cur1; 
-   CLOSE cur2; 
- END; 
Espero haber sido más claro, gracias.