¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
Cómo usar cursores en MySQL
Portada » Cómo usar cursores en MySQL

Cómo usar cursores en MySQL paso a paso

En este procedimiento, llamado recorrerNombre, veremos cómo usar cursores en MySQL. El procedimiento recorre la columna nombre de la tabla clientes de la base de datos tiendaonline, utilizando un cursor y el comando FETCH.

Publicidad

📎Crear un usuario en MySQL

Durante cada iteración del bucle:

  • FETCH recupera un nombre desde el cursor y lo guarda en la variable v_nombre.
  • Si ya no hay más filas, se activa el manejador CONTINUE HANDLER FOR NOT FOUND, que
  • el valor de la variable v_semaforo a TRUE, lo que provoca la salida del bucle (LEAVE).
  • Si se recuperó un nombre correctamente, se imprime usando SELECT v_nombre AS nombre;.

-- Comenzamos a usar el procedimiento:
use tiendaonline;

-- Vemos la tabla sobre la que trabajaremos:

select * from tiendaonline.clientes;

Cómo usar cursores en MySQL paso a paso

-- Solo si el procedimiento existe lo borrará.

DROP PROCEDURE if exists recorrerNombre;

-- Cambiamos el delimitador:

DELIMITER //

-- Creamos el procedimiento con el nombre recorrerNombre:

CREATE PROCEDURE recorrerNombre()
BEGIN

-- Variable que permite salir del bucle cuando no quedan más filas:

DECLARE v_semaforo boolean default 0;
DECLARE v_nombre varchar (50);

-- Declaramos el cursor:

DECLARE cNombreCursor CURSOR FOR select c.nombre from tiendaonline.clientes as c;
DECLARE continue handler for not found SET v_semaforo = 1;

OPEN cNombreCursor;
recorrer:loop
BEGIN

fetch cNombreCursor into v_nombre;

IF v_semaforo then leave recorrer; end if;
end;

-- El nombre se encuentra dentro del bucle para imprimir un nombre por resultado:

SELECT v_nombre AS nombre;

end loop;

CLOSE cNombreCursor;
END //
-- Devolvemos el delimitador al punto y coma:

DELIMITER ;

-- Llamamos al procedimiento:

CALL recorrerNombre();

📎Crear una función paso a paso

Cómo usar cursores en MySQL paso a paso
Cómo usar cursores en MySQL paso a paso

Seguir leyendo:

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)

Deja una respuesta

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
error: Content is protected !!
Hablemos de informática
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.