Alexsandro Felix

Exportar dados de tabelas MySQL para .txt ou .csv

O banco de dados MySQL oferece um recurso bastante útil, que é a exportação de uma tabela de um banco de dados no formato csv (Comma Separated Values), ou txt.

Primeiramente, fazemos o acesso ao banco de dados desejado:


mysql -u root -p

 

A seguir, selecione o banco de dados que contém a tabela a ser salva:


use empresa;

 

Em seguida, fazemos a seleção dos campos que desejamos salvar, acrescentando as diretivas para que o resultado da consulta seja salvo em um arquivo.

Comecemos com o caso mais simples, a exportação do resultado da consulta para um arquivo de texto simples, selecionando todos os campos da tabela:


SELECT * FROM cadastro INTO OUTFILE '/tmp/cadastro.txt';

 

O resultado da consulta será salvo no arquivo `/tmp/cadastro.txt`.

Para salvar no formato `.csv`, precisamos acrescentar alguma diretivas à nossa consulta. Este formato é mais apropriado para fazer importação dos dados que serão lidos por softwares de planilha eletrônica, como LibreOffice Calc, Microsoft Excell, etc.


SELECT * FROM cadastro
INTO OUTFILE '/tmp/cadastro.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY 'n';

Com os parâmetros acima, estamos instruindo o software a delimitar cada campo usando uma vírgula `FIELDS TERMINATED BY ‘,’`, sendo que cada campo é delimitado por aspas duplas: `ECNLOSED BY ‘”‘` e finalmente, especificamos que cada linha termina com uma quebra de linha: `lines terminated by ‘N’`.

Para simplificar o texto, foi feita a seleção de todos os campos: `SELECT * FROM cadastro`, mas você pode montar sua consulta conforme a necessidade.

Referências:

Esta dica foi montada pelo Rubens Queiroz de Almeida], tomando por base o artigo Save MySQL query results into a text or CSV file.

Sair da versão mobile