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
Outras dicas deste autor
Música no Linux pela Rádio UOL
Convertendo documentos do OpenOffice para PDF
Carregando o mapa do teclado no shell
Panda Anti-vírus para Linux
Acessando sua rede pelo navegador
Leitura recomendada
XAMPP para Ubuntu 10
Permissão para acesso remoto do MySQL
Configurando e utilizando MySQL no Arch Linux
MySQL - Reset senha root e acesso localhost
Acesso ao servidor MySQL
Comentários
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?
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.
Mensagem
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
Enviar