Como importar um arquivo excel para uma base de dados MySQL

alguém pode explicar como importar um ficheiro Microsoft Excel para uma base de dados MySQL?

por exemplo, a minha tabela Excel é assim:

Country   |   Amount   |   Qty
----------------------------------
America   |   93       |   0.60

Greece    |   9377     |   0.80

Australia |   9375     |   0.80
Obrigado antecipadamente.

Fero

 59
Author: nickhar, 2009-08-21

10 answers

  1. Exportá-lo para algum formato de texto. A mais fácil será provavelmente uma versão delimitada por tabs, mas CSV também pode funcionar.

  2. Usar a capacidade de dados de carga. Ver http://dev.mysql.com/doc/refman/5.1/en/load-data.html

  3. Olhe a meio da página, pois ela irá dar um bom exemplo para os dados separados por páginas:

    Campos terminados por' \t 'fechados por' escapados por ' \ '

  4. Verifique os seus dados. Às vezes citar ou escapar tem problemas, e você precisa ajustar sua fonte, comando de importação-- ou pode ser apenas mais fácil de pós-processamento via SQL.

 41
Author: ndp, 2015-04-14 23:47:58
Há uma ferramenta online simples que pode fazer isto chamada sqlizer.io.

Screenshot from sqlizer.com

Você envia um ficheiro XLSX para ele, introduza um nome de folha e um intervalo de células, e ele irá gerar uma declaração de tabela de criação e um monte de declarações de inserção para importar todos os seus dados para uma base de dados MySQL.

 86
Author: d4nt, 2016-12-20 16:22:24
Na verdade, existem várias maneiras de importar um arquivo excel para um banco de dados MySQL com vários graus de complexidade e sucesso.
  1. Excel2MySQL ou Navicat utilitários. Revelação completa, sou o autor da Excel2MySQL. Estes 2 utilitários não são livres, mas eles são a opção mais fácil e têm as menores limitações. Eles também incluem recursos adicionais para ajudar na importação de dados do Excel para o MySQL. Por exemplo, Excel2MySQL automaticamente cria a sua tabela e optimiza automaticamente os tipos de dados de campo como datas, horas, flutuadores, etc. Se você está com pressa ou não pode obter as outras opções para trabalhar com seus dados, então esses utilitários podem atender às suas necessidades.

    screenshot of Excel2MySQL

  2. Carregar o ficheiro de dados: Esta opção popular é talvez a mais técnica e requer alguma compreensão da execução de comandos MySQL. Você deve criar manualmente a sua tabela antes de carregar e usar tipos de campo VARCHAR de tamanho apropriado. Portanto, seus tipos de dados de campo não são otimizados. Carregar o ficheiro de dados tem problemas na importação de ficheiros grandes que excedam o tamanho 'max_ allowed_packet'. Atenção especial é necessária para evitar problemas de importação de caracteres especiais e caracteres unicode estrangeiros. Aqui está um exemplo recente que usei para importar um arquivo csv chamado test.csv.

    enter image description here

  3. PhpMyAdmin : seleccione primeiro a sua base de dados e depois seleccione a página Importar. o phpMyAdmin irá criar automaticamente a sua tabela e dimensiona os campos VARCHAR, mas não optimiza os tipos de campos. o phpMyAdmin tem problemas na importação de ficheiros grandes que excedam o tamanho 'max_ allowed_packet'.

    enter image description here

  4. MySQL for Excel : Este é um Add-in livre do Excel do Oracle. Esta opção é um pouco tediosa porque ele usa um assistente e a importação é lenta e buggy com arquivos grandes, mas esta pode ser uma boa opção para arquivos pequenos com dados VARCHAR. Os campos não optimizar.

    enter image description here

 26
Author: panofish, 2014-09-19 19:20:36

Abaixo está outro método para importar dados de planilha para uma base de dados MySQL que não depende de nenhum software extra. Vamos assumir que você quer importar a sua tabela Excel para a tabela sales de uma base de dados MySQL chamada mydatabase.

  1. Seleccione as células relevantes:

    enter image description here

  2. Colar em Sr. Conversor de Dados e seleccionar o resultado como MySQL:

    enter image description here

  3. Mudar o nome da tabela e a coluna definições que se ajustem aos seus requisitos na saída gerada:

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);
  1. Se estiver a usar O MySQL Workbench ou se já estiver ligado a mysql a partir da linha de comandos, então poderá executar directamente as declarações SQL geradas a partir do Passo 3. Caso contrário, cole o código em um arquivo de texto (por exemplo, import.sql) e execute este comando a partir de um shell Unix:

    mysql mydatabase < import.sql

    Outras formas de importar de um ficheiro SQL podem ser encontradas em Este estouro de pilha resposta

 21
Author: thdoan, 2017-05-23 11:55:03

Não sei se tens toda esta configuração, mas para mim estou a usar o PHP e o MYSQL. Então eu uso um PHP classe PHPExcel. Isto leva um arquivo em quase qualquer formato, xls,xlsx, cvs,... e depois deixa-te ler e / ou inserir.

Então o que eu acabo fazendo é carregar o excel em um objeto phpexcel e, em seguida, fazer um loop através de todas as linhas. Com base no que eu quero, eu escrevo um simples comando SQL insert para inserir os dados no arquivo excel na minha tabela.

Na parte da frente, é um pequeno trabalho, mas ... apenas uma questão de ajustar alguns dos exemplos de código existentes. Mas quando você tem ele marcado para fazer alterações na importação é simples e rápido.
 2
Author: user1441213, 2014-10-06 18:26:50

A melhor e mais fácil maneira é usar o aplicativo" MySQL for Excel " que é um aplicativo gratuito da oracle. este aplicativo adicionou um plugin para excel para exportar e importar dados para o mysql. você pode baixar isso a partir de Aqui

 1
Author: Sadeq Shajary, 2015-05-26 07:03:21

Para um exemplo passo a passo para importar o Excel 2007 para o MySQL com a codificação correcta (UTF-8) procurar por este comentário:

"Posted by Mike Laird on October 13 2010 12: 50am"

No seguinte URL:

Http://dev.mysql.com/doc/refman/5.1/en/load-data.html

 0
Author: Raúl Moreno, 2014-08-12 19:52:38

Ao usar arquivos de texto para importar dados, eu tinha problemas com citações e como o Excel estava formatando números. Por exemplo, minha configuração do Excel usou a vírgula como separador decimal em vez do ponto.

Agora uso o Microsoft Access 2010 para abrir a minha tabela MySql como tabela ligada. Lá eu posso simplesmente copiar e colar células do Excel para acessar.

Para fazer isto, instale primeiro o controlador do MySql ODBC e crie uma ligaçãodo ODBC . Em seguida, no acesso, no Página "dados externos", abrir a janela" Base de dados ODBC " e ligar a qualquer tabela usando a conexão ODBC.

 0
Author: Christophe Weis, 2014-11-12 10:39:19

Você poderia usar O DocChow , um GIU muito intuitivo para importar o Excel para o MySQL, e é gratuito nas plataformas mais comuns (incluindo o Linux).

Mais especialmente se estiver preocupado com data, DateTime datatypes, DocChow lida facilmente com datatypes. Se você está trabalhando com várias planilhas do Excel que você deseja importar em uma tabela MySQL DocChow faz o trabalho sujo.

 0
Author: Seanj1000, 2014-12-15 21:19:32

Passo 1 Criar o seu ficheiro CSV

Passo 2 Login no seu servidor de mysql

     mysql -uroot -pyourpassword 

Passo 3 carregue o seu ficheiro csv

     load data local infile '//home/my-sys/my-excel.csv' into table my_tables fields terminated by ',' enclosed by '"' (Country, Amount,Qty);
 0
Author: Syed Shibli, 2018-10-05 12:15:44