Pular para o conteúdo

Exportando dados do MySQL para arquivos textos

Dica publicada em Banco de Dados / MySQL
Eduardo Assis tucs
Hits: 25.805 Categoria: Banco de Dados Subcategoria: MySQL
  • Indicar
  • Impressora
  • Denunciar

Exportando dados do MySQL para arquivos textos

Simples e prático, para quem precise exportar uma tabela inteira para formato texto, basta digitar o seguinte comando SQL no terminal do MySQL:

mysql> SELECT nome, email, estado INTO OUTFILE "/tmp/result.txt"
              FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
              LINES TERMINATED BY "\n"
              FROM tabela;


Abraços
tucs

Convertendo documentos do OpenOffice para PDF

Disponível material de palestra sobre cluster

Música no Linux pela Rádio UOL

II Install Fest em Americana

Construindo uma URA (Unidade de Resposta Audível) no Asterisk 1.4.X

Mysqldump no cron do Slackware

ERROR 1045 (28000) no MySQL 5 - Ubuntu 6.06

MySQL: Alterar diretório base de dados

Recuperando a senha do root de seu MySQL

Instalação do MySQL e Workbench no Fedora 25

#1 Comentário enviado por magskull em 31/08/2007 - 16:24h
Opa, foi muito boa essa dica, mas tem um pequeno problema.

Se o campo tiver um texto muito grande, não contei o numero de caracteres, ele não mostra tudo.

É possivel fazer com que a query apresente um texto longo?
#2 Comentário enviado por clenivaldo2017 em 13/09/2017 - 13:02h
Consegui revolver, pior que fiz ontem de mesma forma, não dava resultado esperada.

Mas agora ficou assim:

<?php

//Conexão com banco de dados
$con=mysqli_connect("localhost","root","7mucly!@#","lbiomic");
if (mysqli_connect_errno())
{
echo "Erro de conexão ao MySQL: " . mysqli_connect_error();
}

$con->query('SET NAMES utf8');

//Verificar os campos vazios
if (!empty( $_POST['busca'])){

$sequencia = $_POST['busca'];

//Consulta à dados ao banco de dados
$resultado = mysqli_query($con,"SELECT pesquisador.citacao, microorganismo.nomeCientifico, microorganismo.taxonomia, sequencia.locus, sequencia.numero_base, sequencia.biomolecula, sequencia.via, sequencia.definicao_sequencia, sequencia.versao_ncbi, sequencia.nt_sequencia FROM sequencia INNER JOIN microorganismo ON microorganismo.id_codMicroEndofitico = sequencia.codMicroEndofitico INNER JOIN pesquisador ON pesquisador.id_codPesquisador = sequencia.codPesquisador WHERE taxonomia LIKE '%$sequencia%' ORDER BY microorganismo.nomeCientifico asc") or die (mysqli_error($con));

if ( mysqli_num_rows($resultado) == 0 ) {
echo "<h1>Sua pesquisa não retornou resultados, <br /> tente novamente!</h1>";
}

//Variável
$i=1;

//Salvar em arquivo .txt as consultas dos usuários
$arquivo = '/home/clenivaldo/arquivo.txt';

//Percorrendo e exibir registros
while($registro = mysqli_fetch_assoc($resultado))
{
$nomeCientifico = $registro['nomeCientifico'];
$citacao = $registro['citacao'];
$taxonomia = $registro['taxonomia'];
$codMicroEndofitico = $registro['codMic'];
$locus = $registro['locus'];
$numero_base = $registro['numero_base'];
$biomolecula = $registro['biomolecula'];
$via = $registro['via'];
$definicao_sequencia = $registro['definicao_sequencia'];
$versao_ncbi = $registro['versao_ncbi'];
$nt_sequencia = $registro['nt_sequencia'];

echo "<hr>";
echo "<hr>";
echo "<h2>$i. $definicao_sequencia</h2>";
echo "<b>GenBank:</b> $versao_ncbi <br />";
echo "<hr>";
echo "<b>Locus:</b> $locus <br />";
echo "<b>Numero de Base:</b> $numero_base pb <br />";
echo "<b>Tipo:</b> $biomolecula <br />";
echo "<b>Via de Identificação:</b> $via <br />";
echo "<b>Organismo:</b> <i> $nomeCientifico </i> <br />";
echo "<b>Origem:</b> <i> $taxonomia </i> <br />";
echo "<b>Autor:</b> $citacao <br />";
echo "<b>Sequência Nucléica (Fasta):</b> <br />";
echo "<br>";
echo "<textarea rows='10' cols='80' style='border: 0; '>$nt_sequencia</textarea>";
echo "<hr>";
echo "<hr>";
echo "<br>";
echo "<br>";
$i++;


$fp = fopen($arquivo, 'a+');
fwrite($fp, $nt_sequencia .'\n');
fclose($fp);

}

//Salvar em arquivo .txt as consultas dos usuários
$arquivo = '/home/clenivaldo/arquivo.txt';
$fp = fopen($arquivo, 'a');
fwrite($fp, $nt_sequencia);
fclose($fp);

//Fechar o banco de dados
mysqli_close($con);

mysqli_close($con);

} else {
echo "<h1><br>Atenção!</h1><br><h2>Campos obrigatórios vazios</h2>";
}
?>

Muito Obrigado a todos, que ajudaram.

Contribuir com comentário

Entre na sua conta para comentar.