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

pasar datos Mysql a excel

Estas en el tema de pasar datos Mysql a excel en el foro de Mysql en Foros del Web. Hola queria saver como puedo guardar las consultas del formulario que se envian a Mysql a un archivo de excel....
  #1 (permalink)  
Antiguo 04/02/2010, 03:47
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
pasar datos Mysql a excel

Hola queria saver como puedo guardar las consultas del formulario que se envian a Mysql a un archivo de excel.
  #2 (permalink)  
Antiguo 04/02/2010, 06:08
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: pasar datos Mysql a excel

Código SQL:
Ver original
  1. SELECT campo1,campo2,campoN INTO OUTFILE '/ruta/archivo.csv'
  2. FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
  3. LINES TERMINATED BY '\n'
  4. FROM tu_tabla;

esto te separa los campos con una coma, los campos varchar y fecha los encierra con comillas y salta de registro cuando encuentre un salto de linea.

Con el archivo generado, puedes abrirlo con Excel y regrabarlo en formato xls.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 04/02/2010, 07:06
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: pasar datos Mysql a excel

muchas gracias por tu respuesta ya me funciona, pero se puede hacer para que cada vez que ejecutes la consulta se escriban los nuevos datos en ese mismo archivo?
  #4 (permalink)  
Antiguo 04/02/2010, 07:12
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: pasar datos Mysql a excel

No creo.
No tengo como probar... pero si ejecutas la misma sentencia se sobreescribe o sale error?

De igual forma, ya tendrías que programar un poco para abrir el fichero, modificarlo y guardarlo nuevamente. Pero ya se sale del alcance de mysql.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 04/02/2010, 07:24
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: pasar datos Mysql a excel

SELECT no diferencia los datos en este caso porque no puede leer el conjunto de datos descargados en el .csv. Para ello deberías tener una tabla o campo que en esa tabla te permita filtrar qué datos ya han sido descargados.
Por otro lado, si ejecutas dos veces la sentencia, la segunda te dirá que no puede porque el archivo ya existe. Normalmente como eso se hace por medio de una aplicación la solución es cambiar dinámicamente el nombre a generar, o bien eliminar con la aplicación el archivo previo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 04/02/2010, 08:42
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: pasar datos Mysql a excel

gracias por responder, si pasa eso que como lo crea el archivo al ejecutarla otra vez da error porque ya existe, para generar otro fichero nuevo cada vez que la ejecuto eso se podria conseguir con el PHP?
  #7 (permalink)  
Antiguo 04/02/2010, 08:53
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: pasar datos Mysql a excel

Si. Lo que tienes que recordar, nada más, es que si pones una ruta específica donde guardar el archivo, las contrabarras (\) deben ser dobles en la cadena de la sentencia, porque MySQL las tomará como caracteres escapados, por lo que algo así: "C:\CarpetaX\archivodedatos.csv", quedará: "C:CarpetaXarchivodedatos.csv" cuando se ejecute dentro de MySQL. Por eso las cadenas con direccion deben enviarse a MySQL: "C:\\CarpetaX\\archivodedatos.csv".

¿Se entiende el problema?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 04/02/2010, 09:25
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: pasar datos Mysql a excel

vale ya lo resolvi muchas gracias por todo.

Etiquetas: excel, pasar
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 20:57.