Pequeña duda con una función en MySQL

Iniciado por jose_ank, 18 Febrero 2019, 13:51 PM

0 Miembros y 1 Visitante están viendo este tema.

jose_ank

Hola a todos,

Estoy intentando hacer un ejercicio que a priori resulta muy fácil pero que no logro que me devuelva ningún valor. El enunciado es el siguiente:

4. Escriba una función que devuelva el número total de productos que hay en la Tabla product.

Este es el código que yo he introducido:

DELIMITER //
CREATE OR REPLACE FUNCTION ejercicio4()
RETURNS INTEGER
BEGIN
DECLARE contador INTEGER;
       SELECT count(*) INTO contador FROM product;
RETURN contador;
   
   
END; //
DELIMITER ;


El problema es cuando ejecuto la función ya que no me devuelve ningún valor (sale una tabla vacía, no me da error pero sale vacía), cuando en realidad me tendría que mostrar que el total de esa tabla son 10 productos.

No me da error de sintaxis, entonces no se si es que estoy almacenando de forma incorrecta el resultado del SELECT o es que es problema del mysql.

Un saludo

EDIT*

Ya he resuelto el problema, resulta que si intentamos mostrar el resultado de esta función de forma tradicional (haciendo click en el botón de "ejecutar" en phpmyadmin) no mostrará ningún resultado puesto que lo que muestra es un total(COUNT). Para ver el resultado solo hay que escribir en la consola de SQL lo siguiente:

CALL ejercicio4();

Podéis cerrar el post ya que la duda está resuelta. Un saludo!