�C�mo se puede recorrer un CURSOR en un procedimiento almacenado?

Hemos probado dentro del procedimiento almacenado:

 

CREATE FUNCTION

            �.

                        DECLARE COD INTEGER;

                                  

                        FETCH miCursor INTO nombreVariable;

                        GET DIAGNOSTICS COD = DB2_LAST_ROW;

                        WHILE (COD<>100) DO

                                   < � instrucciones �>

                                    FETCH miCursor INTO nombreVariable;

                                    GET DIAGNOSTICS COD = ROW_COUNT;

                        END WHILE;

         �

END;

 

Pero en la pesta�a de mensajes del iSeries Navigator obtenemos el siguiente error:

 

Mensaje: [SQL0104] S�mbolo DB2_LAST_ROW no v�lido. S�mbolos v�lidos: ROW_COUNT MESSAGE_TEXT MESSAGE_LENGTH. Causa . . . . . :   Se ha detectado un error de sintaxis en el s�mbolo DB2_LAST_ROW. El s�mbolo DB2_LAST_ROW no es un s�mbolo v�lido. Una lista parcial de s�mbolos v�lidos es ROW_COUNT MESSAGE_TEXT MESSAGE_LENGTH. Esta lista asume que la sentencia es correcta hasta el s�mbolo. El error puede estar anteriormente en la sentencia, pero la sintaxis de la sentencia aparece como v�lida hasta este punto.Recuperaci�n  . :   Efect�e una o m�s de las siguientes acciones y vuelva a intentar la petici�n:-- Verifique la sentencia SQL en el �rea del s�mbolo DB2_LAST_ROW. Corrija la sentencia. El error podr�a ser la omisi�n de una coma o comillas; podr�a tratarse de una palabra con errores ortogr�ficos, o podr�a estar relacionado con el orden de las cl�usulas.-- Si el s�mbolo de error es <FIN DE SENTENCIA>, corrija la sentencia SQL porque no finaliza con una cl�usula v�lida.

 

 

 

�Alguna soluci�n o alternativa para recorrer el cursor?  Muchas Gracias. 

Responder a