Ver Mensaje Individual
  #9 (permalink)  
Antiguo 18/11/2010, 07:26
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: Procedimiento con insert

Probé:
Código MySQL:
Ver original
  1. mysql> DELIMITER $$
  2. mysql> DROP PROCEDURE IF EXISTS `setRegistrados`$$
  3. Query OK, 0 rows affected (0.00 sec)
  4.  
  5. mysql> CREATE PROCEDURE  `setRegistrados`(
  6. ->     IN nom VARCHAR(120),
  7. ->     IN email VARCHAR(120),
  8. ->     IN cel VARCHAR(10),
  9. ->     OUT id INT)
  10. ->     BEGIN
  11.     ->     INSERT INTO registrados (regnom,regemail,regcel) VALUES (nom,email,cel);
  12.     ->     SET id = LAST_INSERT_ID();
  13.     -> END $$
  14. Query OK, 0 rows affected (0.00 sec)
  15.  
  16. mysql> DELIMITER ;
  17. mysql> DELIMITER $$
  18. mysql> DROP FUNCTION IF EXISTS `getRegistrados`$$
  19. Query OK, 0 rows affected (0.00 sec)
  20.  
  21. mysql> CREATE FUNCTION  `getRegistrados`(
  22. ->     nom VARCHAR(120),
  23. ->     email VARCHAR(120),
  24. ->     cel VARCHAR(10)) RETURNS int(11)
  25. ->     BEGIN
  26.     ->       DECLARE ide INT DEFAULT 1;
  27.     ->       CALL setRegistrados(nom,email,cel, ide);
  28.     ->       RETURN ide;
  29.     -> END;
  30.     ->
  31.     ->  $$
  32. Query OK, 0 rows affected (0.01 sec)
  33.  
  34. mysql> DELIMITER ;
  35. mysql> SELECT getRegistrados('aaaaaaaa','bbbbbbbb','cccccccc') insertado;
  36. +-----------+
  37. | insertado |
  38. +-----------+
  39. |         1 |
  40. +-----------+
  41. 1 row in set (0.00 sec)
  42.  
  43. mysql> SELECT getRegistrados('aaaaaaaa','bbbbbbbb','cccccccc') insertado;
  44. +-----------+
  45. | insertado |
  46. +-----------+
  47. |         2 |
  48. +-----------+
  49. 1 row in set (0.00 sec)
  50.  
  51. mysql> SELECT getRegistrados('aaaaaaaa','bbbbbbbb','cccccccc') insertado;
  52. +-----------+
  53. | insertado |
  54. +-----------+
  55. |         3 |
  56. +-----------+
  57. 1 row in set (0.00 sec)

Como puedes apreciar, el código está perfectamente reconocido y funcional. Puede ser que tengas un error en la forma de ingresar los datos.
¿Cómo lo estás haciendo?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)