Hace algunos días, por una asignación, me vi frente al problema de traspasar algunos cientos de registros desde una planilla en Excel a una base de datos MySQL.
Luego de darme cuenta que el número de registros era bastante alto, descarté la posibilidad de hacer el traspaso de forma manual y me ví en la búsqueda de alguna forma que pudiera automatizar el proceso, sin necesidad de programar o utilizar algún script intermedio.
Fueron varias las soluciones que aparecieron, unas más sencillas que otras, y con eso en cuenta, hoy les traemos un sencillo tutorial en donde les enseñaremos a realizar este proceso en solo algunos minutos.
El detalle, como siempre, después del salto.
Como mencionábamos en al introducción, existen varios métodos para realizar este proceso. Desde realizar una exportación de la planilla excel a formato CSV y luego importarlo a MySQL hasta varias alternativas de software. Luego de probar todas estas, nos dimos cuenta que la forma menos engorrosa y más rápida es con el software que presentamos a continuación.
Así que como siempre, lo primero:
Con todo eso listo, vamos, manos a la obra:
1.- Lo primero que debemos hacer, es asegurarnos de igualar los formatos en que se guardarán los datos en MySQL con los que tiene la planilla de Excel, es decir, debemos crear nuestra tabla de forma que contenga el mismo número de campos (y tipo de datos) que los que existen en la plantilla y que luego almacenaremos. Para este caso, creamos una tabla que contiene campos correspondiente a ‘Nombre de Lugar’ , ‘Nombre de responsable’, ‘Teléfono’, ‘E-mail’, ya que esos son los datos que tenemos en nuestro Excel.
2.- Una vez que nuestra tabla está lista, abrimos nuestra planilla de Excel y nos aseguramos de quitar cualquier formato molesto que haya en las celdas, con el fin de no entorpecer el proceso, es decir, eliminamos colores, formatos, etc.
3.- A continuación, instalamos el software Navicat for MySQL que hemos descargado desde el sitio Web oficial y procedemos a instalarlo. El proceso es bastante estándar, por lo que no entraremos en detalle.
4.- Una vez instalado, lo ejecutamos y veremos su interfaz principal:
5.- Ahí nos dirijimos al botón Connection para configurar nuestra conexión a la base de datos:
Y se nos presentará una ventana como la siguiente:
Aquí configuramos los siguientes datos:
Hacemos click en Ok y podremos ver que se ha creado una nueva conexión en la interfaz principal.
6.- Sobre esa conexión hacemos click con el botón derecho y seleccionamos Open Connection:
Si los datos estaban bien, se conectará a la BD y nos desplegará las BD que tengamos creadas:
7.- Hacemos doble click sobre nuestra BD y se abrirá, desplegando todos sus elementos. Nos dirijimos a la sección Tables y doble click nuevamente para mostrarnos las tablas que tenemos creadas. Seleccionamos la que queremos rellenar y hacemos click con el botón derecho, seleccionando la opción Import Wizard:
Con eso se abrirá el Asistente de importación, el cual consta de 8 pasos como veremos en las siguientes imágenes:
8.- Primero debemos partir por seleccionar el formato del archivo desde donde importaremos. Hay varias posibilidades, pero debemos seleccionar Excel File (*.xls):
Y click en Next.
9.- Luego debemos seleccionar el archivo desde donde importaremos. En caso de que la planilla tenga más de una hoja, debemos marcar la que corresponde a nuestros datos:
10.- A continuación, podemos indicarle al programa que fila tomar como primera y cual como última, de esta forma, si tenemos títulos en las columnas, podemos configurar para que se las salte:
11.- Luego habrá un cuadro de confirmación para ver el origen y destino de los datos, hacemos click en Next:
12.- En la siguiente sección, cruzaremos los datos, asignando a cada campo de la tabla de la BD el correspondiente de la planilla Excel. Dependiendo de esta asignación se realizará la importación en las filas siguientes:
13.- Por último debemos seleccionar la última opción. Si la importación debe añadir los datos al final de los existentes o si debe borrar los existentes y añadir los nuevos. Como nuestra tabla esta vacía, seleccionamos la primera opción:
14.- Y ahora llegamos a la pantalla final, donde solo debemos presionar en Start para comenzar la importación:
El proceso demora algunos instantes dependiendo del número de registros y de si nuestra BD es local o está en algún servidor remoto. Al final de la importación se nos mostrará un cuadro resumen indicandonos cuantos datos se pudieron insertar y si hubo errores.
Y así de simple hemos hecho una importación a una tabla en MySQL desde una planilla Excel en solo algunos minutos.
Como consejo final, les recomendamos observar a fondo este Software, ya que presenta una serie de atractivas funcionalidades para la administración de BD, como la creación de procedimientos almacenados, optimización de tablas y mucho más. Es sin duda una herramienta muy potente.
Como siempre, recuerden que este tutorial ha sido:
Cualquier duda o comentario que puedan tener, los invitamos a dejar unas líneas en el área habilitada a continuación.
Esperamos que este tutorial haya sido de utilidad para Uds.
Muchas gracias por leer y será hasta una próxima oportunidad.
10:41:02 am
gracias por este tutorial me ha servido muchisimo
de nuevo mil gracias.
10:42:25 am
mil gracias
5:57:03 pm
mil gracias por el tutorial.excelente.
11:15:58 pm
gracias
10:47:28 am
Excelente, tu manual es el éxito!!!
11:57:39 am
El navicat simplemente no me deja acceder a la base de datos, le quite el firewall a mi pc y tambien abri el puerto 3306 en mi router, al intentar la coneccion me aparece 2003 – can’t connect to my sql server, el usuario y contraseña son correctas solo dudo si la ip de la pagina es la misma de la base de datos.
2:46:10 am
mil gracias por el tutorial.
me ayudo muchisimo.
3:05:36 pm
Hola me gusto mucho tu tutorial es justo lo que estaba buscando muchas gracias me gustaria saber como hacer la conexción de una base de datos de MSQL al DreamWeaver.
10:16:48 pm
Gracias!!! me salvaron ,buscaba esto 🙂
no me logra importar, pero ha de ser problema del excel, en eso estoy 😀
1:00:16 pm
Muchas gracias me ayudo muchisimo.