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

Procedimiento Almacenado

Estas en el tema de Procedimiento Almacenado en el foro de Mysql en Foros del Web. Hola, Tengo un inconveniente al tratar de crear un SP (Procedimiento almacenado) lo que necesito es dentro del SP crear una tabla y así mismo ...
  #1 (permalink)  
Antiguo 16/06/2016, 10:44
 
Fecha de Ingreso: mayo-2015
Mensajes: 12
Antigüedad: 9 años, 5 meses
Puntos: 0
Procedimiento Almacenado

Hola,

Tengo un inconveniente al tratar de crear un SP (Procedimiento almacenado) lo que necesito es dentro del SP crear una tabla y así mismo insertar unos datos que selecciono de una vista ya creada, el código que tengo es el siguiente
Código:
Código MySQL:
Ver original
  1. CREATE PROCEDURE SP_INGRESOS()
  2. DROP TABLE IF EXISTS INGRESOS_MES;
  3.  
  4. CREATE TABLE INGRESOS_MES(
  5.     TOTAL_INGRESOS float,
  6.     FECHA date
  7. )
  8. INSERT INTO INGRESOS_MES(
  9.     TOTAL_INGRESOS,
  10.     FECHA
  11. )
  12. SELECT TOTAL_INGRESOS,FECHA
  13. FROM VTOTAL_INGRESOS
[/CODE]
Pero me arroja un error de sintaxis que no sé como corregir, si alguien puede ayudarme sería muy amable, Gracias

Última edición por gnzsoloyo; 16/06/2016 a las 11:21
  #2 (permalink)  
Antiguo 16/06/2016, 11:25
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Procedimiento Almacenado

Enumerando:
1) Un SP de más de una línea requiere crear todo el body en un bloque BEGIN / END.
2) TODAS las sentencias del SP deben estar contenidas en un único BEGIN/END, y no puede haber NINGUNA fuera de él.
3) Dependiendo de si el SP se compila con alguna IF, o se escribe en la consola de MySQL, puede requerirse que se use un cambio de delimitadores de sentencias (comando DELIMITER), a fin de que MySQL tome el codigo completo como un sólo objeto.
4) Todo SELECT presente en el SP genera la salida del SP, interrumpiendo su ejecución, por lo que deben estar colocados al final.
5) Si vas a usar tablas temporales deben crearse como TEMPORARY, de lo contrario son tablas permanentes y generan un error de ejecución en luego de la primera vez que s invocan.

Eso, para empezar.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: almacenado, fecha, procedimiento, select, tabla
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:28.