<img src="https://yb8hiq.dm
Hola a todos, este es mi primer post que hago con una inquietud, fijense que quiero hacer un Procedimiento almacenado en XAMPP (MariaDB), pero me da error el FETCH, no sé porqué, tengo que limpiar las variables cuando hago un loop, while o repeat???
Lo que quiero hacer es un procedimiento que me permita hacer una especie de back up de una tabla (auditoria) de base de datos (northwind) a otra tabla (aubk) de otra base de datos (moviendo), he tratado de muchas maneras y no puedo hacer que el procedimiento se guarde, el problema según MariaDB es que el FETCH es el problema, pero lo reviso y "al parecer: todo está bien", necesito una manita por favor, porque la tarea era para ayer, pero le escribí al ingeniero que me de chance ahora de enviarla y me he dado duro todo el día en eso, corregí muchos errores y en teoria sólo esa es la traba.
Estoy ocupando XAMPP, como base de datos MariaDB.
Este es el codigo:
DELIMITER //
CREATE PROCEDURE moviendo()
BEGIN
DECLARE codEmp INT;
DECLARE fecha TIMESTAMP;
DECLARE ipv4 VARCHAR(15);
DECLARE comentario VARCHAR(100);
DECLARE bolsa CURSOR FOR SELECT codEmp, fecha, ipv4, comentario FROM `auditoria`;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET @hecho = TRUE
OPEN bolsa;
REPEAT
FETCH bolsa INTO codEmp,fecha,ipv4,comentario;
IF comentario IS NULL THEN
INSERT INTO `moviendo.aubk` VALUES (codEmp,fecha,ipv4,'NO HAY JUSTIFICACION DE MOVIMIENTO');
ELSE
INSERT INTO `moviendo.aubk` VALUES (codEmp,fecha,ipv4,comentario);
END IF;
UNTIL @hecho
END REPEAT;
CLOSE bolsa;
SELECT codEmp, fecha, ipv4, comentario from `moviendo.aubk`;
END;
//
Porfa se les agradecería que pudieran ayudarme.