Retorno status de comandos no MySQL
Colaboração: Ronie Ramos de Oliveira
Data de Publicação: 01 de Outubro de 2009
PERGUNTA: Estou fazendo várias rotinas para manipulação do meu banco de dados utilizando Born Shell. Em alguns comandos gostaria de avaliar o retorno (status) do comando. Por exemplo: status do update (se foi realizada alguma alteração). Existe alguma maneira ? Em perl sei que é possível....mas em born shell...
RESPOSTA, por Ronie Ramos de Oliveira
Dá um pouco de trabalho mas você poderá testar, dentro de um shell script, se um comando mysql foi executado com sucesso.
Para testar o retorno de comando no linux:
#!/bin/bash echo "Digite um diretorio:" read dir ls $dir valor=$? if (( $valor == 0 )); then echo "Comando executado com sucesso!" else echo "Comando nao executado com sucesso!" fi
Para testar se um update foi executado com sucesso no MySQL:
OBS: Solaris (ksh)
jobs=$home/jobs abre_bco=`cat $jobs/abre_bco` prep_update='update tabela set .... '
OBS: abre_bco é um arquivo no diretório /home/jobs contendo a seguinte linha:
espaco_em_branco -u root -psua_senha seu_banco_de_dados
echo $prep_update > $tmp/update_tabela
> mysql -vv $abre_bco < $tmp/update_tabela >$tmp/erro.upd
stat1=`tail -n 3 $tmp/erro.upd | head -1 | awk -F":" '{print $3}' | cut -c2-2`
if (( $stat1 == 0 )) then
echo " *DEU ERRO.......* "
rm $tmp/update_tabela $tmp/erro.upd
exit
fi
Agradeço a colaboração de Marcelo Moraes e Valdir Soares.
Este artigo foi extraído do sistema Rau-Tu de Perguntas e Respostas sobre Bancos de Dados Livres, mantido pelo Centro de Computação da Unicamp.
Veja a relação completa dos artigos da Bancos de Dados Livres
Para se manter atualizado sobre as novidades desta coluna, consulte sempre o newsfeed RSS
Para saber mais sobre RSS, leia o artigo O Padrão RSS - A luz no fim do túnel.


