Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Problema con cursor de MySQL

Estas en el tema de Problema con cursor de MySQL en el foro de Mysql en Foros del Web. Foreros, tengo el siguiente problema quiero hacer un cursor que en base a los datos obtenidos del cursos se actualize otra tabla. Lo quiero usar ...
  #1 (permalink)  
Antiguo 16/12/2011, 14:15
 
Fecha de Ingreso: diciembre-2011
Mensajes: 1
Antigüedad: 12 años, 4 meses
Puntos: 0
Pregunta Problema con cursor de MySQL

Foreros, tengo el siguiente problema quiero hacer un cursor que en base a los datos obtenidos del cursos se actualize otra tabla.

Lo quiero usar para actualizar las existencias del inventario, la idea es que esto funcione usando un cursos para que quien deba realizar el trabajo sea el servidor MySQL y no tenga que realizarce una interaccion repetida entre el cliente y mysql.

Se preguntaran y por que no hacer directa la afectacion al ingresar articulos, la respuesta es por que se tiene que generar un cierre mensual y es para evitar la afectacion real del inventario en caso de que exista algun error.

Salu2.


DECLARE xIDArticulo VARCHAR(20);
DECLARE xResultado INT;
DECLARE xCursor FOR SELECT IDArticulo,SUM(CANTIDAD) AS Resultado From detmov Where IDAlmacen=1 and status="N" group by idarticulo order by idarticulo;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET xResultado=0;

OPEN xCursor;
WHILE NOT DONE DO
FETCH xCursor INTO xIDArticulo,xResultado;
IF xResultado>=0 THEN
Update existencias set ExiCierre=xResultado where idarticulo=xIDArticulo and IDAlmacen=1;
END IF;
END WHILE;
CLOSE xCursor;
  #2 (permalink)  
Antiguo 16/12/2011, 14:24
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema con cursor de MySQL

Bueno, partiendo de que en MySQL un CURSOR sólo existe en un SP, y no puede usarse fuera de él, exactamente ¿cuál es el problema que te da el código que posteas?

Sigo, porque sin tener tu base y tus datos, probarlo será algo complicado...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: cursor, tabla, resultados, actualizar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:44.