Bases de Datos

Ξ 28 comentarios

Cómo importar a MySQL desde Excel

por Xabadu
Cómo importar a MySQL desde Excel

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.

Cómo importar a MySQL desde Excel

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:

Implementos necesarios:

  1. El software Navicat for MySQL, que puede ser descargado desde su sitio Web Oficial.
  2. Una planilla en Excel con datos, ordenados por columna.
  3. Una base de datos en MySQL.

Con todo eso listo, vamos, manos a la obra:

Procedimiento:

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:

  • Connection Name: El nombre que le daremos a la conexión, puede ser cualquiera.
  • Host name/IP Address: La dirección del servidor de BD, si está en el mismo equipo donde estamos trabajando será localhost, de lo contrario debemos ingresar el dato correspondiente.
  • Port: MySQL por defecto utiliza el puerto 3306 para operar, por lo que probablemente no deberemos alterar este dato. Si tienen dudas, pongánse en contacto con su proveedor de servicios.
  • User name: El nombre de usuario con el que ingresamos a la BD.
  • Password: La contraseña correspondiente a ese nombre de usuario.

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.

Comparte este tutorial

El culpable de todo esto

Las tardes gloriosas de domingo y las grandes ovaciones a estadio lleno, no son algo extraño para Xabadu. Luego de ser descubierto a los 4 años en un partido de barrio por los ojeadores del gran Aviación F.C., sacudió el mercado nacional al ser traspasado en $500 pesos chilenos (1 USD) y 3 coca colas al renombrado Estrella Blanca de Lolol. Luego de una impresionante carrera por equipos como Lozapenco, Santa Cruz, Deportivo Lago Chungará y una incursión en la 3a división del futbol de Kazajstan, su record imbatible hasta la fecha de 1257 goles en 20 partidos lo llevo a ser elegido como uno de los arqueros más recordados en la historia pelotera nacional. Una lesión en el colmillo superior derecho lo llevó al retiro el año 2003, pero está de vuelta y sin duda que su jerarquía y experiencia internacional será un gran aporte.

En los barrios marginales se le conoce como: Xabadu

Comentarios en Facebook

28 Comentarios

  • Buenas tardes, necesito importar un excel a mysql, pero mis tablas tienen llaves foraneas pertenecientes a otras tablas, q opciones me dan para lograr esto!?

    • Hola Pierre, para la importación, la única forma es ir importando tabla por tabla, haciendo la relación en distintas hojas de Excel (por ahora no se me ocurre una manera más óptima). Para la exportación es más sencillo, ya que puedes exportar consultas desde Navicat a Excel.

      Saludos!

    • Hola Pierre! Esta herramienta; Navicat, también te permite importar datos aún si en la tabla tienes llaves foraneas. En el paso 7 das click en el botón “Advanced” y check el item “Use foreign key constraints”.

      Saludos desde Colombia!

      VictoriaB

  • Muchas gracias el programa me funcionó a la perfección. Muchísimas gracias!!!!

  • Interesante herramienta. Me queda la duda de si a la hora de realizar la operación tengo que tener instalado Excel o Acces en su caso, en el mismo ordenador que la herramienta. Tambien quisiera saber si algun usuario lo ha probado desde Linux bajo Wine.

    • @Roberto Pla: No, no es necesario que tengas instalado Excel ni Access. Sobre lo otro, actualmente hay una versión para Linux, así que no hay necesidad de instalarlo por Wine 😀

      Saludos!

  • Hola que tal @Xabadu,mi duda es el momento de importar un archivo con extension .html, solo almacena los titulos de la tabla no almacena los registros que estan en la tabla de la base de datos mysql

  • Hola que tal @Xabadu,mi duda es el momento de importar un archivo con extension .html, solo almacena los titulos de la tabla no almacena los registros que estan en la tabla de la base de datos mysql a que se debe esto?

1 2 3

Responder a rdelao_ss Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Gente linda que nos quiere

Donde mas estamos