Ir al contenido


Foto

Ayuda con SP


  • Por favor identifícate para responder
47 respuestas en este tema

#1 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 08 noviembre 2013 - 12:36

Lo que pasa es que tengo el siguiente código del VideoTutorial 16 de PHP POO y no me funciona, me manda un error:

CREATE PROCEDURE introducir_persona(IN nombre varchar(100), IN edad varchar(10))
IF edad < 18 THEN
INSERT INTO ninos VALUES (NULL, nombre, edad);
ELSE
INSERT INTO adultos VALUES (NULL, nombre, edad);
  • 0

#2 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 08 noviembre 2013 - 12:59

Lo que pasa es que tengo el siguiente código del VideoTutorial 16 de PHP POO y no me funciona, me manda un error:

CREATE PROCEDURE introducir_persona(IN nombre varchar(100), IN edad varchar(10))
IF edad < 18 THEN
INSERT INTO ninos VALUES (NULL, nombre, edad);
ELSE
INSERT INTO adultos VALUES (NULL, nombre, edad);


No falta un BEGIN y un END en el SP ???

Saludox ! :)
  • 0

#3 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 08 noviembre 2013 - 01:02

Ya lo inclui, pero me manda un error al colocar el end
  • 0

#4 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 08 noviembre 2013 - 01:04

Ya lo inclui, pero me manda un error al colocar el end


Muéstranos porfas tu SP completo (con el END incluido) y el error que te manda (y)

Saludox ! :)
  • 0

#5 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 08 noviembre 2013 - 01:09




sql
  1. CREATE PROCEDURE introducir_persona
  2.         (IN nombre VARCHAR(100), IN edad VARCHAR(10) )
  3. BEGIN
  4.   IF edad < 18 THEN
  5.         INSERT INTO ninos VALUES (NULL, nombre, edad);
  6.   ELSE
  7.         INSERT INTO adultos
  8.             VALUES (NULL, nombre, edad);
  9.   END;


  • 0

#6 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 08 noviembre 2013 - 01:33

Intenta colocando un END IF; después de terminar la condición... y una trampa, coloca en vez del ELSE otro IF con la condición contraria al pimer IF  *-)

Saludox ! :)
  • 0

#7 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 08 noviembre 2013 - 01:35

Sigue siendo lo mismo, manda error :s
  • 0

#8 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 08 noviembre 2013 - 01:38

Sigue siendo lo mismo, manda error :s


Prueba de esta manera y me dices que error lanza:



sql
  1. CREATE PROCEDURE introducir_persona
  2.         (IN nombre VARCHAR(100), IN edad VARCHAR(10) )
  3. BEGIN
  4.  
  5.   IF edad < 18 THEN
  6.         INSERT
  7.             INTO ninos
  8.         VALUES (NULL, nombre, edad);
  9.   ELSE
  10.         INSERT
  11.           INTO adultos
  12.             VALUES (NULL, nombre, edad);
  13.   END IF;
  14.  
  15. END








  • 0

#9 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 08 noviembre 2013 - 01:44

CREATE PROCEDURE introducir_persona
        (IN nombre varchar(100), IN edad varchar(10) )
BEGIN

  IF edad < 18 THEN
        INSERT
            INTO ninos
        VALUES (NULL, nombre, edad);  * syntax error unexpected END_OF_INPUT, expected ';'
  ELSE *syntax error, unexpected ELSE
        INSERT
          INTO adultos
            VALUES (NULL, nombre, edad);
  END if; *syntax error, unexpected END

END *syntax error, unexpected END
  • 0

#10 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 08 noviembre 2013 - 02:10

cambia los insert into tabla values()  por  insert into tabla (campos) values(valores);  ejecuta y nos dices

  • 0

#11 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 08 noviembre 2013 - 02:29

Me manda los mismos errores :s  :
  • 0

#12 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 08 noviembre 2013 - 02:33

Me manda los mismos errores :s  :


Nos puedes mandar una actualización del mounstruo que hemos estado creando jeje ???  *-) (y)

Saludox ! :)
  • 0

#13 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 10 noviembre 2013 - 10:12

CREATE PROCEDURE introducir_persona
        (IN nombre varchar(100), IN edad varchar(10) )
BEGIN

  IF edad < 18 THEN
        INSERT
            INTO ninos (id_nino, nombre, edad)
        VALUES (NULL, nombre, edad);
  ELSE
        INSERT
          INTO adultos (id_adulto, nombre, edad)
            VALUES (NULL, nombre, edad);
  END if;

END
  • 0

#14 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 10 noviembre 2013 - 09:38

Y así ???

CREATE PROCEDURE introducir_persona
        (IN nombre varchar(100), IN edad varchar(10) )
BEGIN

  IF edad < 18 THEN
        INSERT
            INTO ninos (id_nino, nombre, edad)
        VALUES (NULL, nombre, edad);
END IF;
 
IF edad >=18 THEN
        INSERT
          INTO adultos (id_adulto, nombre, edad)
            VALUES (NULL, nombre, edad);
  END IF;

END;


Saludox ! :)
  • 0

#15 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 10 noviembre 2013 - 09:49

Me sigue enviando errores, ya no se q hacer  8o|
  • 0

#16 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 10 noviembre 2013 - 10:31

Pregunta, el campo id_adulto es autoincrementable ?  ^o|

Saludox ! :)
  • 0

#17 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 10 noviembre 2013 - 10:33

Si, las 2 tablas tienen el id auto_increment
  • 0

#18 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 10 noviembre 2013 - 10:34

Intenta no incluyéndolo en el listado ni de campos ni de valores en el INSERT INTO

Saludox ! :)
  • 0

#19 rburgos90

rburgos90

    Member

  • Miembros
  • PipPip
  • 22 mensajes

Escrito 10 noviembre 2013 - 10:36

Como inlcuyo una imagen aqui para mandar la captura de pantalla, sigue igual :s
  • 0

#20 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 10 noviembre 2013 - 10:39

Al responder (no en la respuesta inmediata, si no en el botón de responder) te muestra la opción de adjuntar un archivo... (y)

Saludox ! :)
  • 0




IP.Board spam blocked by CleanTalk.