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

Store procedure

Estas en el tema de Store procedure en el foro de Mysql en Foros del Web. Amigos una consulta como puedo realizar lo siguiente con un stored procedure: tengo una consulta que me arroja como resultado el nombre de la tabla ...
  #1 (permalink)  
Antiguo 25/06/2010, 09:19
 
Fecha de Ingreso: septiembre-2007
Mensajes: 318
Antigüedad: 17 años, 2 meses
Puntos: 1
De acuerdo Store procedure

Amigos una consulta como puedo realizar lo siguiente con un stored procedure:

tengo una consulta que me arroja como resultado el nombre de la tabla que debo usar para mi segunda consulta, mi pregunta es como puedo usar el resultado de la primera consulta para que realice la segunda, tomando en cuenta que la primera puede arrojarme lo siguiente:

vehiculos
servicios
alquiler

estas son tres tablas y para ver su detalle tengo que llevar acabo una segunda consulta donde inculla el nombre de estas tablas para obtener sus datos.

como puedo realizar esta consulta muchachos.

mil gracias amigos espero que me puedan ayudar.

saludos...
  #2 (permalink)  
Antiguo 28/06/2010, 12:58
 
Fecha de Ingreso: agosto-2009
Mensajes: 44
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Store procedure

no has intentando usar un cursor para la primera consulta? y puedes insertar los resultados en una tabla temporal
  #3 (permalink)  
Antiguo 28/06/2010, 13:14
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: Store procedure

Cita:
estas son tres tablas y para ver su detalle tengo que llevar acabo una segunda consulta donde inculla el nombre de estas tablas para obtener sus datos.
La única forma, en MySQL, es usando sentencias preparadas.

Código MySQL:
Ver original
  1. DELIMITER $$
  2.  
  3. DROP PROCEDURE IF EXISTS `ejemplo_prepare` $$
  4. CREATE PROCEDURE `ejemplo_prepare`(IN tabla CHAR(100))
  5.   SET @SENTENCIA = CONCAT('SELECT * FROM `', TRIM(tabla), '`;');
  6.   PREPARE SENT FROM @SENTENCIA;
  7.   EXECUTE SENT;
  8.   DEALLOCATE PREPARE SENT;
  9. END $$
  10.  
  11. DELIMITER ;
__________________
¿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; 28/06/2010 a las 13:39

Etiquetas: procedure, store
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 09:06.