guardar - importar excel a mysql
Cómo importar un archivo Excel en una base de datos MySQL (9)
Exportarlo a algún formato de texto. La más fácil probablemente será una versión delimitada por tabuladores, pero CSV también puede funcionar.
Use la capacidad de carga de datos. Ver http://dev.mysql.com/doc/refman/5.1/en/load-data.html
Observe la mitad de la página, ya que dará un buen ejemplo de datos separados por tabulaciones:
CAMPOS TERMINADOS POR ''/ t'' CERRADO POR '''' ESCAPADO POR ''/'
Verifica tus datos A veces, citar o escaparse tiene problemas, y necesita ajustar su fuente, importar comandos ... o puede ser más fácil postprocesar a través de SQL.
¿Alguien puede explicar cómo importar un archivo de Microsoft Excel en una base de datos MySQL?
Por ejemplo, mi tabla de Excel se ve así:
Country | Amount | Qty
----------------------------------
America | 93 | 0.60
Greece | 9377 | 0.80
Australia | 9375 | 0.80
Gracias por adelantado.
Fero
A continuación hay otro método para importar datos de hoja de cálculo en una base de datos MySQL que no depende de ningún software adicional. Supongamos que desea importar su tabla de Excel en la tabla de sales
de una base de datos MySQL llamada mydatabase
.
Seleccione las celdas relevantes:
Pegue en Mr. Data Converter y seleccione la salida como MySQL:
Cambie el nombre de la tabla y las definiciones de columna para que se ajusten a sus requisitos en el resultado generado:
CREATE TABLE sales (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Country VARCHAR(255),
Amount INT,
Qty FLOAT
);
INSERT INTO sales
(Country,Amount,Qty)
VALUES
(''America'',93,0.60),
(''Greece'',9377,0.80),
(''Australia'',9375,0.80);
Si está utilizando MySQL Workbench o ya ha iniciado sesión en
mysql
desde la línea de comandos, puede ejecutar las sentencias SQL generadas directamente desde el paso 3. De lo contrario, pegue el código en un archivo de texto (por ejemplo,import.sql
) y ejecute este comando desde un shell Unix:mysql mydatabase < import.sql
Se pueden encontrar otras formas de importar desde un archivo SQL en esta respuesta de desbordamiento de pila .
Al usar archivos de texto para importar datos, tuve problemas con las comillas y cómo Excel estaba formateando los números. Por ejemplo, mi configuración de Excel utilizó la coma como separador decimal en lugar del punto.
Ahora uso Microsoft Access 2010 para abrir mi tabla MySql como tabla vinculada. Allí simplemente puedo copiar y pegar celdas desde Excel a Access.
Para hacer esto, primero instale el controlador ODBC de MySql y cree una conexión ODBC . Luego, en el acceso, en la pestaña "Datos externos", abra el cuadro de diálogo "ODBC Database" y enlace a cualquier tabla utilizando la conexión ODBC.
En realidad, hay varias maneras de importar un archivo de Excel a una base de datos MySQL con diversos grados de complejidad y éxito.
Excel2MySQL o Navicat . Divulgación completa, soy el autor de Excel2MySQL. Estas 2 utilidades no son gratuitas, pero son la opción más fácil y tienen menos limitaciones. También incluyen características adicionales para ayudar a importar datos de Excel en MySQL. Por ejemplo, Excel2MySQL crea automáticamente su tabla y automáticamente optimiza los tipos de datos de campo como fechas, horas, carrozas, etc. Si tiene prisa o no puede obtener otras opciones para trabajar con sus datos, estas herramientas pueden satisfacer sus necesidades.
LOAD DATA INFILE : esta opción popular es quizás la más técnica y requiere cierta comprensión de la ejecución de comandos MySQL. Debe crear manualmente su tabla antes de cargarla y usar los tipos de campo VARCHAR de tamaño apropiado. Por lo tanto, sus tipos de datos de campo no están optimizados. LOAD DATA INFILE tiene problemas para importar archivos de gran tamaño que superan el tamaño de ''max_allowed_packet''. Se requiere atención especial para evitar problemas al importar caracteres especiales y caracteres Unicode foráneos. Aquí hay un ejemplo reciente que utilicé para importar un archivo csv llamado test.csv.
phpMyAdmin : Seleccione primero su base de datos, luego seleccione la pestaña Importar. phpMyAdmin creará automáticamente su tabla y dimensionará sus campos VARCHAR, pero no optimizará los tipos de campo. phpMyAdmin tiene problemas para importar archivos de gran tamaño que exceden el tamaño de ''max_allowed_packet''.
MySQL para Excel : este es un complemento de Excel gratuito de Oracle. Esta opción es un poco tediosa porque utiliza un asistente y la importación es lenta y con errores con archivos grandes, pero esta puede ser una buena opción para archivos pequeños con datos VARCHAR. Los campos no están optimizados.
Hay una herramienta en línea simple que puede hacer esto llamada sqlizer.io .
Usted carga un archivo XLSX, ingrese un nombre de hoja y un rango de celda, y generará una instrucción CREATE TABLE y un grupo de instrucciones INSERT para importar todos sus datos en una base de datos MySQL.
No estoy seguro de si tiene toda esta configuración, pero para mí estoy usando PHP y MYSQL. Entonces utilizo una clase PHP PHPExcel. Esto toma un archivo en casi cualquier formato, xls, xlsx, cvs, ... y luego le permite leer y / o insertar.
Entonces lo que termino haciendo es cargar el excel en un objeto phpexcel y luego recorrer todas las filas. Basado en lo que quiero, escribo un simple comando de inserción de SQL para insertar los datos en el archivo de Excel en mi tabla.
En la parte delantera, es un poco de trabajo, pero solo es cuestión de retocar algunos de los ejemplos de código existentes. Pero cuando lo tienes marcado para hacer cambios en la importación es simple y rápido.
Para obtener un ejemplo paso a paso para importar Excel 2007 en MySQL con la codificación correcta (UTF-8) busque este comentario:
"Publicado por Mike Laird el 13 de octubre de 2010, 12:50 a.m."
en la siguiente URL:
Puede usar DocChow , una GIU muy intuitiva para importar Excel en MySQL, y es gratis en las plataformas más comunes (incluyendo Linux).
Más especialmente si le preocupa la fecha y los tipos de datos de fecha y hora, DocChow maneja fácilmente los tipos de datos. Si está trabajando con múltiples hojas de cálculo de Excel que desea importar en una sola tabla MySQL, DocChow hace el trabajo sucio.
la mejor y más fácil es utilizar la aplicación "MySQL for Excel" que es una aplicación gratuita de Oracle. esta aplicación agregó un complemento para sobresalir para exportar e importar datos a mysql. puedes descargar eso desde aquí