Una cosa que me ha sorprendido ahora que estoy empezando con MySql es la posibilidad de trabajar con archivos CSV como forma de almacenar los datos.
Obviamente no es porque sea el formato ideal ni mucho menos, pero la posibilidad de hacerlo para los muchísimos ficheros existentes en este formato es muy interesante. Especialmente porque no requiere cargar los datos mediante ningún proceso, basta con sustituir el archivo cada vez y ya tendremos los datos actualizados.
Veamos como funciona, primero deberemos definir la tabla en MySql con el formato adecuado acorde al archivo que vayamos a procesar, y lógicamente la definiremos como CSV.
Posteriormente cogemos nuestro archivo CSV y lo arreglamos para que no haya problemas, para ello debemos dejarlo delimitado por comas (nada de punto y comas u otros carácteres) y mejor si delimitamos con dobles comillas cada campo, para ello podéis usar, ajustándola a vuestro caso particular, la siguiente instrucción en el terminal:
cat archivo_origen | sed s/.$/\"/g | sed s/^/\"/g | sed s/\;/\"\,\"/g > archivo_final.CSV
Ahora ya tendremos el archivo listo, lo copiamos en el directorio donde tengamos nuestra base de datos MySql con el nombre de la tabla que hayamos creado y con la extensión CSV.
Sólo nos queda loguearnos en MySql usando el terminal y ejecutar los siguientes comandos para tener la tabla lista para trabajar.
use vuestra_base_de_datos;
flush tables;
Repitiendo esto cada vez después de haber cambiado el fichero CSV actualizaremos los datos, cómo ya he dicho sin cargas ni borrados.
Y ahora, un ejemplo de que la velocidad es bastante, o incluso muy, aceptable:
mysql> select count(*) from tabla;
+----------+
| count(*) |
+----------+
| 531441 |
+----------+
1 row in set (1.03 sec)
5 últimas entradas en linux
- [Consejos Terminal] Utiliza las expresiones regulares, son tus amigas - June 9th, 2008
- [Consejos Terminal] Aprende a utilizar curl para Internet - June 6th, 2008
- [Consejos Terminal] Encuentra ficheros grandes y otras funciones - June 4th, 2008
- [Consejos Terminal] Aprovecha pushd y popd para navegar por los directorios. - June 3rd, 2008
- [Consejos Terminal] Reutiliza los argumentos anteriores. - June 2nd, 2008
5 últimas entradas en mamp
- Wordpress fácil en Mac OS X con MAMP - July 26th, 2007
5 últimas entradas en mysql
- Wordpress fácil en Mac OS X con MAMP - July 26th, 2007
5 últimas entradas en tutorial
- [Consejos Terminal] Utiliza las expresiones regulares, son tus amigas - June 9th, 2008
- [Consejos Terminal] Aprende a utilizar curl para Internet - June 6th, 2008
- [Consejos Terminal] Encuentra ficheros grandes y otras funciones - June 4th, 2008
- Arranca tomcat permitiendo debug en eclipse - June 3rd, 2008
- [Consejos Terminal] Aprovecha pushd y popd para navegar por los directorios. - June 3rd, 2008

1 Comments
#1. DbRunas - Como usar archivos CSV en MySql 01.09.2008
[...] adecuado acorde al archivo que vayamos a procesar, y l?gicamente la definiremos como CSV.Mas: http://www.pedromarce.com/index.php/2008/01/como-usar-archivos-csv-en-mysql/ [...]
Leave a Comment