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

problema con procedures

Estas en el tema de problema con procedures en el foro de Mysql en Foros del Web. Hola amigos, miren he creado este procedure, que no da ningun tipo de problema. ESTA COPIADO DEL MANUAL OFICIAL DE MYSQL delimiter // create procedure ...
  #1 (permalink)  
Antiguo 23/02/2011, 04:09
 
Fecha de Ingreso: septiembre-2007
Mensajes: 152
Antigüedad: 16 años, 8 meses
Puntos: 1
problema con procedures

Hola amigos, miren he creado este procedure, que no da ningun tipo de problema.
ESTA COPIADO DEL MANUAL OFICIAL DE MYSQL

delimiter //
create procedure contar_orders (out param1 int)
begin
select count(*)
into param1
from orders;
end
//

PARA EJECUTARLO

call contar_orders(@a);

Y PARA MOSTRAR RESULTADO

select @a;

Y el problema es: Siempre devuelve null, la sentencia de dentro del procedure esta probado y funciona correctamente, el problema solo esta en el procedure, no se que puede ser.


Un saludo
Gracias de antemano
  #2 (permalink)  
Antiguo 23/02/2011, 05:17
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, 5 meses
Puntos: 2658
Respuesta: problema con procedures

Cita:
Y el problema es: Siempre devuelve null, la sentencia de dentro del procedure esta probado y funciona correctamente, el problema solo esta en el procedure, no se que puede ser.
A que las variables de usuario (las que se identifican con "@") deben ser inicializadas antes de ser usadas, y como el uso es en el CALL, no sirve inicializarlas dentro del SP. Hay que hacerlo antes:
Código MySQL:
Ver original
  1. SET @a=0;
  2. CALL contar_orders(@a);
El valor de una variable de usuario sin inicializar es NULL, y si le sumas, restas, multiplicas, divides o asignas algo a NULL el resultado es siempre NULL.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 24/02/2011, 03:44
 
Fecha de Ingreso: septiembre-2007
Mensajes: 152
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: problema con procedures

gnzsoloyo, muchas gracias me has solucionado un gran problema!!!

un saludo

Etiquetas: procedures
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 15:58.