SQL – Saindo da caixa preta

Olá!

Estou aqui, e não é com a continuação do specflow (shame on me), mas vim falar de outro tema que estava estudando de acordo com as metas 2016… o SQL (link para o codecademy AQUI)  e “SPOILER ALERT” esse post vai ter várias linhas de código apenas para mostrar o quão simples a linguagem é 🙂

First things first, o SQL é uma linguagem de programação (e provavelmente a mais simples de todas) que trabalha com tabelas, banco de dados e afins.

E eu estou falando sério quando digo que ele é simples, ele é tão simples quanto a Siri do Iphone, se você souber inglês fica muito mais fácil , SQL é 99% inglês, mas aquele 1% é código (ok, brincadeira….mas pelo menos 80% é inglês), vamos dar um exemplo (sem imagens devido a alguns problemas técnicos….no caso ter esquecido minha senha do Oracle SQL, e por isso não conseguir criar a tabela em questão rs):

Você tem uma loja de jogos, e existe uma tabela que armazena as seguintes informações:

NomeDoJogo / Plataforma / QtdEstoque / Valor 

Caso você queira verificar a tabela inteira você pode inserir o seguinte comando :

SELECT * FROM TabelaJogos (algo como “Selecionar de TabelaJogos”)

Simples assim, a tabela vai ser exibida com todas as colunas e linhas ordenadas pra você na tela…. simples demais? Então que tal se eu quiser exibir apenas os jogos da plataforma ‘3ds’?

SELECT * FROM TabelaJogos WHERE Plataforma =’3ds’ (algo como “Selecionar de TabelaJogos onde Plataforma é 3ds)

E teremos a planilha apresentando a mesma tabela, mas apenas as linhas aonde a coluna “Plataforma” está com o valor “3ds”…  como deu pra perceber a linha de código é escrita praticamente em inglês, com alguns símbolos  (por exemplo “=”) e alguns sinalizadores como * ou aspas, que servem para indicar melhor para o sistema qual a operação está sendo passada, por exemplo nessa linha acima estamos informando que o ‘3ds’ é uma string (texto), e por isso temos as aspas.

Podemos usar esse mesmo raciocínio para outras colunas, por exemplo:

SELECT * FROM TabelaJogos WHERE QtdEstoque = 10 (para saber quais jogos que temos apenas 1o unidades no estoque, repare que não temos aspas no valor

SELECT * FROM TabelaJogos WHERE QtdEstoque < 100 (para saber quais jogos que temos no estoque com menos de 100 unidades

Até o momento acredito que esteja bem tranquilo né? Podemos ir um pouco mais pra frente, e pedir para a tabela exibir as informações de acordo a uma organização desejada, como por exemplo:

SELECT * FROM TabelaJogos WHERE Plataforma = ‘3ds’ ORDERBY Valor DESC (Selecione da Tabela jogos onde a Plataforma é o 3ds, organize pela coluna Valor em ordem decrescente)

Nessa linha adicionamos o ORDERBY, ele pode ser acompanhado por qualquer coluna, e a base vai exibir os resultados, mas utilizando aquela coluna para organizar os resultados, e logo em seguida adicionamos o DESC que pede para que organize por ordem decrescente (ASC para crescente)…. vocês perceberam quantas coisas conseguimos pedir em uma simples linha? Não vou negar que fiquei todo empolgado vendo a simplicidade disso rs, claro que existem alguns detalhes mais complexos, relacionar tabelas diferentes, ocultar resultados e diversos outros itens, mas nenhum bicho de sete cabeças.

Agora você pode estar se perguntando, em como o SQL vai te ajudar a automatizar testes…. e ele não vai \o/

A grande vantagem do SQL é nos testes manuais, sair da caixa preta e ir pra caixa cinza, tornar a vida dos desenvolvedores mais fácil!

A chance de você encontrar um sistema que use uma base SQL é muito alta, e se você souber executar comandos simples como os de cima, pode ajudar bastante a produtividade da equipe.

Digamos que exista um cenário aonde você tenha ver o comportamento do sistema com um pedido feito ano passado, você não pode fazer um pedido ano passado, mas pode fazer um pedido hoje, e alterar a data de criação nele no banco…. digamos que você tenha 15 cenários envolvendo essas mudanças de horário…ao invés de parar o desenvolvedor a cada três minutos para ele ajudar com os cenários, você mesmo pode alterar a data do pedido na mão, pode ser que as vezes você não saiba como executar alguma alteração no banco, mas entendendo a lógica por trás, você pode parar o analista uma vez para que ele te explique como fazer aquela alteração….  se você entende ela, é só seguir em frente 🙂

Resumindo tudo isso, o SQL é uma ótima forma de sair da caixa preta, a simplicidade chega a animar, já que com poucas horas de estudo você já consegue ver alguns resultados e executar comando úteis!

Esse post não tem como intenção ensinar a utilizar a ferramenta, mas sim ter uma ideia por cima de como ela funciona 😉

 

 

Anúncios

2 comentários sobre “SQL – Saindo da caixa preta

  1. Gostaria de discordar com a parte que vc fala que aprender SQL não ajuda em automação.
    Um caso em que ajuda, por exemplo, é para a criação de uma massa de dados de testes antes da execução dos testes automatizados. Existem configurações que podem ser executadas de forma automática para, por exemplo, criar essa massa de dados antes dos testes, então estes à consomem e ao final há um clean up. #ficaadica!

    Curtir

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s