Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/05/2011, 08:44
Avatar de gnzsoloyo
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: Multiples Select en un Procedimiento

Es posible que no lo puedas recuperar por algún problema de encabezado de la columna. Siempre es buena práctica poner un alias a columnas que se crean con funciones o con operaciones matemáticas.

Código MySQL:
Ver original
  1. DELIMITER $$
  2. CREATE PROCEDURE retiro(IN cuenta varchar(12), IN canti INT)
  3.         START TRANSACTION;
  4.         SET @actu = (SELECT saldo FROM cuentas WHERE numCuenta = cuenta);
  5.         IF @actu>canti THEN
  6.                SET @actu = @actu - canti;
  7.                UPDATE `cuentas` SET `saldo`= @actu  WHERE `numCuenta`= cuenta;
  8.         ELSE
  9.                SET @actu:='NO';
  10.         END IF;
  11.        COMMIT;
  12.        SELECT @actu Respuesta;
  13. END$$
  14. DELIMTER;

Respecto a las variables tipo OUT e INOUT, estas se declaran en el prototipo del SP, pero depende del lenguaje usado el poder recuperarlas. Yo personalmente sólo trabajo con VB.Net C#.Net y VB.ASP, por lo que me resulta sencilllo hacerlo. No tengo ni idea de cómo hacerlo con servlets. Eso lo tendrás que buscar en la documentación respectiva.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 30/05/2011 a las 08:57