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

Dos insert en una misma consulta

Estas en el tema de Dos insert en una misma consulta en el foro de Mysql en Foros del Web. Hola amigos como estan, Mirad me preguntaba si podria hacer en la misma consulta que envio desde php dos insert en dos tablas diferentes o ...
  #1 (permalink)  
Antiguo 10/11/2010, 14:47
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Dos insert en una misma consulta

Hola amigos como estan,

Mirad me preguntaba si podria hacer en la misma consulta que envio desde php dos insert en dos tablas diferentes o necesitaria dos consultas diferentes

UN ejemplo de orientacion para mostrar lo que qiero,

$consulta='INSERTgalerias(Ncofradia,titulo,fecha)V ALUES(\''.$_SESSION['Ncofradia'].'\', \''.$titulo.'\', \''.$fecha.'\')' INSERT imagenes (Ncofradia, Ngaleria, nombre, imagen) VALUES (\''.$_SESSION['Ncofradia'].'\', \''.$Ngaleria.'\', \''.$nombre.'\', \''.$imagen.'\')';

mysql_query($consulta,$conexion);



O se tendrian que hacer las dos por separado?

Un saludo amigos
  #2 (permalink)  
Antiguo 10/11/2010, 14:51
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Dos insert en una misma consulta

Como son inserciones a dos tablas por separado debes hacerlo aparte.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 10/11/2010, 15:42
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Dos insert en una misma consulta

Hola amigo,

Gracias por tu respuesta, y si quisiera hacer un selet y un insert podria hacerlo en la misma linea o tampoco seria posible?

un saludo amigo
  #4 (permalink)  
Antiguo 10/11/2010, 15:45
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Dos insert en una misma consulta

No franjgg

Lo que se podría hacer es inserts multiples para una misma tabla.
algo como:
Código SQL:
Ver original
  1. INSERT INTO tabla VALUES(VALOR1,VALOR2),(VALOR3,VALOR4),(VALOR5,VALOR6);

Pero no entiendo cual es tu objetivo de hacer esto.
Si lo haces de forma separada, igualmente se utiliza una unica conexión.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 10/11/2010, 16:55
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Dos insert en una misma consulta

Hola amigo,

Me referia a solamente hacer un select y un insert en la misma consulta o tambien tendria que hacer una consulta para el select y otra para el insert.

Un saludo amigo
  #6 (permalink)  
Antiguo 10/11/2010, 21:50
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Dos insert en una misma consulta

Te propongo que pongas un ejemplo de lo que quieres y aca te ayudamos a ver si es posible o no.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #7 (permalink)  
Antiguo 11/11/2010, 04:10
Avatar de 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, 4 meses
Puntos: 2658
Respuesta: Dos insert en una misma consulta

Cita:
Iniciado por franjgg Ver Mensaje
Hola amigo,

Me referia a solamente hacer un select y un insert en la misma consulta o tambien tendria que hacer una consulta para el select y otra para el insert.

Un saludo amigo
Sólo existe una consulta combinada entre INSERT y SEECT en el caso de que los datos a tomar en el INSERT en lugar de provenir de un VALUES proviniesen de un SELECT:

Código MySQL:
Ver original
  1. INSERT INTO tabla(a, b, c)
  2. SELECT a1, b1, c1
  3. FROM tabla2;
Pero en este caso, las dos consultas son en realidad una sola.

Además razónalo así:
Si estás INSERTANDo se está haciendo una actualización de datos en la taba y en los índices, que todavía está corriendo cuando llega el SELECT (y viceversa)... ¿En qué estado está el registro entrante? ¿Ya forma parte de la tabla o aún no (los sistemas no son instantáneos)? Leerá los datos nuevos o esa transacción será un dirty read?

Finalmente: ¿Qué utilidad tendría para tí hacer esas dos cosas en una sola sentencia? ¿Para qué quieres hacerlo así?
__________________
¿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: dos, insert
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 18:37.