|
�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. |
