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

Insertar consulta SQL a tabla MySql

Estas en el tema de Insertar consulta SQL a tabla MySql en el foro de Mysql en Foros del Web. Hola a todos esta es mi primer pregunta en el foro. Estoy haciendo una aplicacion en PHP la cuestion es que me estoy conectado a ...
  #1 (permalink)  
Antiguo 02/10/2013, 14:30
 
Fecha de Ingreso: octubre-2013
Mensajes: 6
Antigüedad: 10 años, 6 meses
Puntos: 0
Insertar consulta SQL a tabla MySql

Hola a todos esta es mi primer pregunta en el foro.
Estoy haciendo una aplicacion en PHP la cuestion es que me estoy conectado a un servidor sql por medio de sqlsrv_connect.
Tengo en mi localhost una BD mysql.
El resultado de una consulta del servidor SQL pasarla a una tabla mysql.
Pasar los resultados de una tabla Mysql a otra del mismo servidor no tengo problema.
Insert into (columnas)
select columnas etc etc.
no hay problema por que es la misma conexion.

Pero con este problema como le puedo hacer.
actualmente lo que estoy haciendo es:
Cita:
Código de programación no permitido en foros de BBDD. Leer las normas del foro, por favor.
Aunque uso SP esto es muy tardado y hago un insert por cada renglon.
agradeceria mucho la ayuda de alguno de ustedes.

Última edición por gnzsoloyo; 02/10/2013 a las 16:13
  #2 (permalink)  
Antiguo 02/10/2013, 16:16
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: Insertar consulta SQL a tabla MySql

Lo que debes hacer es construir un insert masivo a partir de los datos obtenidos en la consulta. Esto se hace creando multiples conjuntos de VALUES:
Código MySQL:
Ver original
  1. INSERT INTO tabla(campos)
  2. VALUES (valores), (valores),  (valores),  (valores),  (valores),...
Esa construcción se hace por programación, pero eso es OFF TOPIC en este foro.
Consulta en el foro del lenguaje.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 03/10/2013, 08:27
 
Fecha de Ingreso: octubre-2013
Mensajes: 6
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Insertar consulta SQL a tabla MySql

Gracias gnzsoloyo, esto tambien es un poco tardado ya que tiene que almacenar datos en variables para despues subir todo junto y estamos hablando de varios cientos de miles de registros.
lo que hice fue esportar los datos de sql a un txt y despues del txt exportarlos a mysql, esto me esta funcionando un poco mejor. aunque tengo algunos detalles por resolver todavia. porque al sacar los datos de sql a el txt algunas columnas me pone comillas eje "pedro", y a mysql se sube igual.
Gracias por su ayuda..
  #4 (permalink)  
Antiguo 03/10/2013, 08:43
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: Insertar consulta SQL a tabla MySql

Bueno, esa es una alternativa.
Puede ser más rápida sin problemas, pero tienes indicar correctamente los delimitadores usados en ese caso para las cadenas de texto.
Mira esto del LOAD DATA que está bastante bien explicado:
MySQL con Clase: LOAD DATA
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 03/10/2013, 08:56
 
Fecha de Ingreso: octubre-2013
Mensajes: 6
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Insertar consulta SQL a tabla MySql

Gracias por tu ayuda Fue de gran utilidad. me faltaba (ENCLOSED BY '\"').
Te lo agradezco mucho espero le ayude tambien a alguin que tenga este mismo problema.
Saludos.

Etiquetas: insert, php, select, sql, 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 18:10.