Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde pessoal
Esse é meu primeiro tópico aqui no imasters.
Sou iniciante em MySQL e o problema que apresentarei aqui já procurei a solução na net e não encontrei então resolvir colocar aqui para ver se tem uma resposta.
E o seguinte:
Quero criar um bat que conect com o banco do MySQL no servidor e ao mesmo tempo execute uma consulta em uma tabela e o resultado salve em um arquivo texto em um diretório compartilhado na rede.
Meu bat está assim:
mysql -h 10.1.1.X - u root -- password= adm (essa linha conecta com o mysql e já abre o banco ADM)
Select produto, desc, preco INTO OUTFILE '/bak/PRICETAB.TXT' from tbprodutos;
quit
ao executar o bat, conecta normalmente com o mysql e abre o banco de dados ADM normalmente, o grande problema é que não passa adiante executando o SELECT e QUIT......só se digitar. Gostaria muito que isso foi feito automatico e se possível que jogasse para dentro de uma pasta compartilha em outro computador (ex> \\pc1\preco). Caso não seja possível jogar para dentro do compatilhamento, pelo menos salver na basta /bak
Desde já agradeço.
Orisvaldo
Tem como resolver isso
desc é uma palavra reservada do mysql, deixe assim desc com essas aspas estranhas ou mude o nome do campo.
Sim funciona! Queria somente que o script/bat acima executar a conexão com o bd e fizesse o select e por fim eu guardasse em uma pasta em uma pasta compartilhada...só isso
Desde já agradeço pela atenção
Orisvaldo
http://dev.mysql.com/doc/refman/5.1/en/select-into.html
crie uma tabela aqui com um campo chamado desc
rodei a seguinte consulta
SELECT marca, desc INTO OUTFILE 'c:/web.txt' FROM revenda.marcas
obtive esse erro
>
Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc INTO OUTFILE 'c:/web.txt'
Bom dia.
No meu caso não deu erro! Cria o arquivo corretamente, do jeito que eu quero. A unica coisa, é que isso fosse feito via scrpt e/ou arquivo bat........Daí a única coisa que ia fazer era agendar esse bat para rodar de tempo em tempo; tudo automatico.
Veja o comando do arquivo bat
_____________________________________
mysql -h 10.1.1.8 -u cliente --password= adm
Select codbarra, nome, unit1 INTO OUTFILE '/bak/PRICETAB.TXT' FIELDS TERMINATED BY '|' LINES TERMINATED BY '\r\n' from produtos;
quit
------------------------------------------------------------
O comando executa e para depois da primeira linha (essa conecta no servidor e abre o banco adm), fica esperando se digitado o select, coisa que gostaria que fosse direto.
Desde já agradeço a atenção
Se você executar este comando no mysql ele roda normal?
Select produto, desc, preco INTO OUTFILE '/bak/PRICETAB.TXT' from tbprodutos;