Saltar al contenido

procedimiento almacenado mysql: parámetro de salida

este problema se puede resolver de diversas formas, pero te damos la que en nuestra opinión es la solución más completa.

Solución:

No se puede replicar. Funcionó bien para mí:

mysql> CALL my_sqrt(4, @out_value);
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT @out_value;
+------------+
| @out_value |
+------------+
| 2          | 
+------------+
1 row in set (0.00 sec)

Quizás debería pegar el mensaje de error completo en lugar de resumirlo.

Debe utilizar la firma correcta para el parámetro de entrada * Falta la entrada en el código siguiente.

CREATE PROCEDURE my_sqrt(IN input_number INT, OUT out_number FLOAT)

Intenté llamar a una función en la terminal en lugar de MySQL Query Browser y funciona. Entonces, parece que estoy haciendo algo mal en ese programa …

No sé qué, ya que llamé a algunos procedimientos antes con éxito (pero no había parámetros) …

Por este yo había entrado

CALL my_sqrt(4,@out_value);
SELECT @out_value;

Y resulta con un error:

Tiene un error en su sintaxis SQL; consulte el manual que corresponde a la versión de su servidor MySQL para conocer la sintaxis correcta para usar cerca de ‘SELECT @out_value’ en la línea 2

Curiosamente, si escribo solo:

CALL my_sqrt(4,@out_value); 

El mensaje de resultado es: “Consulta cancelada”

Supongo que por ahora solo usaré terminal …

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



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *