Manipulando o MySQL diretamente pelo shell
Dica publicada em Banco de Dados / Miscelânea
Manipulando o MySQL diretamente pelo shell
Isso não é novidade para os desenvolvedores experientes, mas para os iniciantes e muito útil, especialmente para os entusiastas do shell como eu.
O cliente MySQL para Linux/*.nix permite stdin, stdout e stderr diretamente pelo shell, o que permite escrever aplicações inteiramente em shell que manipulem bancos de dados MySQL.
1 - Para simplificar, primeiramente criemos um alias (apelido) para o comando mysql.
$ alias sql='mysql -u usuário_do_database -psenha_do_database -e'
2 - Agora a sintaxe é a seguinte:
sql "comandos do Mysql" BANCO_DE_DADOS_A_SER_MANIPULADO
Ex:
$ sql "SELECT ID, NOME, ENDERECO FROM cadastro;" SISTEMA
No exemplo acima estou dando um SELECT na tabela "cadastro" solicitando o retorno das colunas ID, NOME e ENDERECO do banco de dados SISTEMA.
Em combinação com os comandos nativos do shell (sed, cut, paste, grep, tr, etc.) podemos formatar a saída como quisermos para uso em nossos scripts, como variáveis, echos e tudo mais.
Bom trabalho!
O cliente MySQL para Linux/*.nix permite stdin, stdout e stderr diretamente pelo shell, o que permite escrever aplicações inteiramente em shell que manipulem bancos de dados MySQL.
1 - Para simplificar, primeiramente criemos um alias (apelido) para o comando mysql.
$ alias sql='mysql -u usuário_do_database -psenha_do_database -e'
2 - Agora a sintaxe é a seguinte:
sql "comandos do Mysql" BANCO_DE_DADOS_A_SER_MANIPULADO
Ex:
$ sql "SELECT ID, NOME, ENDERECO FROM cadastro;" SISTEMA
No exemplo acima estou dando um SELECT na tabela "cadastro" solicitando o retorno das colunas ID, NOME e ENDERECO do banco de dados SISTEMA.
Em combinação com os comandos nativos do shell (sed, cut, paste, grep, tr, etc.) podemos formatar a saída como quisermos para uso em nossos scripts, como variáveis, echos e tudo mais.
Bom trabalho!