Exportar planilha e importar como tabela para o mysql

0

Qual é a maneira mais fácil de exportar uma tabela do MS-Excel ou OpenOffice calc e importá-la para um banco de dados mysql, onde:

  1. A tabela será importada como uma tabela no MySQL
  2. Os cabeçalhos da tabela serão os campos do banco de dados MySQL
  3. Haverá alguma análise inteligente sobre qual tipo de dados está dentro das células, por exemplo, um campo de texto, um inteiro ou um valor de ponto flutuante.
por Roalt 11.11.2010 / 20:55

3 respostas

5

Uma das ferramentas que eu sempre tenho comigo é o 'Pentaho Kettle', que é um fantástico ETL de código aberto. Você pode encontrar a edição "gratuita" no link

Depois de baixar e instalar o software, as etapas são mais ou menos as seguintes:

  1. Lançamento do Chaleira Pentaho
  2. (Tipicamente) clique em 'No Repository'
  3. Crie uma nova transformação.
  4. No lado esquerdo, você verá vários 'blocos'. Nesse caso, arraste um bloco 'Entrada de Excel' da categoria 'Entrada' para o seu arquivo de transformação.
  5. Clique duas vezes no bloco que você acabou de arrastar. Os próximos passos referem-se a este bloco
    • Clique em "Procurar" e selecione o arquivo do Excel que você deseja importar
    • Clique em "Adicionar" (localizado à esquerda do botão Navegar). Você deve ver o arquivo listado na lista "Arquivos selecionados" abaixo
    • Agora vá até a guia "! Planilhas" (deve ser a segunda guia) e selecione a planilha com os dados que você deseja importar para o seu banco de dados
    • Finalmente, vá para a guia "! Campos" (deve ser a última à direita), clique no botão "Obter campos da linha de cabeçalho ..." e altere os diferentes tipos de dados de acordo
    • Clique no botão "Visualizar linhas" para garantir que tudo esteja bem.
  6. Agora, vamos mover esses dados para seu banco de dados SQL. Para simplificar, vou descrever como criar uma nova tabela no banco de dados. No entanto, observe que o Kettle fornece blocos para lidar com atualizações e tarefas de 'inserir / atualizar'.
  7. Mais uma vez, arraste um bloco do lado esquerdo. Desta vez, vá para a seção 'Output' e selecione 'Table output'.
  8. Conecte os dois blocos segurando a tecla 'Shift' e arrastando o ponteiro do mouse do Excel para o bloco Table Output. Os próximos passos estão relacionados ao bloco de saída da tabela.
    • Primeiro, precisamos criar uma conexão com o banco de dados. Para fazer isso, clique no botão "Novo ..." ao lado da caixa suspensa "Conexão".
    • Na lista 'Connection Type', selecione 'MySQL' (como você pode ver, o Kettle permite a conexão com um grande número de diferentes bancos de dados). Preencha todos os campos apropriados e lembre-se de clicar em "Testar" para garantir que a comunicação esteja funcionando.
    • Digite o nome da tabela
    • Vá para a guia "Campos do banco de dados" e selecione "Inserir mapeamento de campo". A partir daqui, certifique-se de mapear todas as colunas do Excel no fluxo para os campos apropriados do MySQL e clique em 'OK' (se os nomes no Excel corresponderem à sua tabela, você pode simplesmente clicar em 'Adivinha' para chegar perto). >
  9. Por fim, salve sua transformação e execute-a selecionando o menu "Transformação > Executar". Se tudo correr bem, você verá uma mensagem que diz "Transformação concluída" na caixa de execução, na guia "Logging".

Boa sorte!

    
por 13.11.2010 / 19:10
0

Você pode tentar importar dados externos do SQLyog. É um simples cliente GUI.

    
por 06.12.2012 / 12:06
0

O Excel2MySQL permite que você importe planilhas do Excel diretamente como uma tabela para o MySQL. Para importar um arquivo do OpenOffice Calc, basta salvar como xls e depois importar.

(Divulgação completa, eu sou o autor do Excel2MySQL).

Atende a todos os seus requisitos:

  1. Cada folha é importada como uma tabela no MySQL. Na verdade, a tabela é criada automaticamente.
  2. Os cabeçalhos da tabela podem ser usados para definir os campos da tabela MySQL.
  3. O Excel2MySQL FAZ análise inteligente no tipo de dados da coluna para otimizar automaticamente os tipos de campos da tabela (tinyint, smallint, mediumint, int, bigint, flutuante, duplo, varchar, data, hora, datetime)

E mais:

  • Conecta-se diretamente ao seu servidor MySQL
  • Inclui uma interface de linha de comando, se você precisar automatizar as importações.
  • Anexar ou substituir a tabela existente
  • Detecte e adicione novos campos automaticamente na tabela existente
  • Exploda automaticamente as células mescladas do Excel (não é o mesmo que desmembrar).
  • Opcionalmente, exclua linhas em branco e colunas em branco
  • Opcionalmente, altere espaços para sublinhados em nomes de campos (função de conveniência)

link

    
por 10.10.2013 / 18:43