Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/04/2013, 22:43
xplertor
 
Fecha de Ingreso: febrero-2004
Ubicación: Lima
Mensajes: 3
Antigüedad: 20 años, 2 meses
Puntos: 0
Pregunta Error de Cursor con While.

Hola amigos: Tengo este Store donde se debe insertar en la tabla de Fee una linea que tiene Año,Mes, Codigo,Estado
Este es por cada cliente
Entonces, pongo el rango de años para crear por año los meses y los valores pero no funciona.

No funciona el cursor y sale un error de:
Error Code : 1329
No data - zero rows fetched, selected, or processed

Hay 1367 clientes y tengo q hacer los años por cada clientes.

A ver si me dan una guia.

Gracias.

Código MySQL:
Ver original
  1. DELIMITER //
  2. CREATE PROCEDURE sp_CreateFeeCustomer (IN ano_ini INT,IN ano_fin INT)
  3. DECLARE Ano1 INT;
  4. DECLARE CNo VARCHAR(12);
  5. DECLARE cur1 CURSOR FOR SELECT CustomerNo FROM Customer;
  6. DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
  7. SET Ano1 = ano_ini;
  8.  
  9. OPEN cur1;
  10. curl:REPEAT
  11. FETCH cur1 INTO CNo;
  12. IF NOT done THEN
  13.     SET fc = 0;
  14.     WHILE Ano1 < ano_fin+1 DO
  15.         SET t = 1;
  16.         WHILE t < 13 DO
  17.             INSERT INTO Fee VALUES (Ano1,CNo,IF(LENGTH(t)=1,CONCAT('0',t),t),fc,0);
  18.         SET t = t + 1;
  19.         END WHILE;
  20.     SET fc = fc + 1;
  21.     SET Ano1 = Ano1 + 1;
  22.     END WHILE;
  23. UNTIL done
  24. END REPEAT curl;
  25. CLOSE cur1;
  26. //
  27.  
  28. CALL sp_CreateFeeCustomer(2012,2014);

Última edición por gnzsoloyo; 09/04/2013 a las 05:31 Razón: Mal etiquetado.