DEV Community

Eliel Dias
Eliel Dias

Posted on

O que é SQL ?

Opaaa, seja muito bem-vindo(a)! 👋

Se você gosta ou trabalha com TI (Tecnologia da Informação), independentemente da área, muito provavelmente já ouviu falar sobre a sigla SQL.

E talvez, da mesma forma como eu pensava, você pense:

"É uma linguagem dos caras que mexem com banco de dados." 🤣

Sim, eu pensava exatamente dessa forma! Até que, durante os meus estudos voltados para PHP, esbarrei na necessidade de entender melhor o que é o SQL.

Por esse motivo, neste post vou compartilhar o que aprendi. O objetivo é tanto apresentar a minha visão sobre o assunto quanto aplicar a Técnica de Feynman, uma excelente estratégia para fixar conteúdos aprendidos, mesmo que pareça óbvio (e talvez seja mesmo).


Iniciando pelo conceito teórico 📖

SQL (Structured Query Language), traduzido para o português como Linguagem de Consulta Estruturada, é, a grosso modo, a linguagem universal de comunicação para bancos de dados relacionais (este conteúdo me ajudou a entender). 🤓

E daí já entra um novo termo: Bancos de Dados Relacionais. Eles são conhecidos como bancos de dados tradicionais, nos quais os dados são organizados em tabelas, colunas e linhas, sendo também possível realizar relacionamentos entre tabelas por meio de chaves (Primary Keys e Foreign Keys).

Com essa linguagem, é possível realizar as operações clássicas de manipulação de dados, conhecidas pela sigla CRUD:

  • CREATE (Inserção) – Permite inserir novos registros ou dados no banco (em SQL, realizado pelo comando INSERT).
  • READ (Consulta/Leitura) – Permite ler, buscar e filtrar dados armazenados no banco (realizado pelo comando SELECT).
  • UPDATE (Atualização) – Permite modificar ou atualizar dados já existentes no banco (realizado pelo comando UPDATE).
  • DELETE (Exclusão) – Permite remover registros cadastrados no banco (realizado pelo comando DELETE).

Porém, devido ao SQL ser uma linguagem declarativa, também são utilizados outros comandos e cláusulas para definir o escopo, quantidade, filtro e outras operações com os comandos mostrados acima.


Entendendo algumas queries na prática 🪄

Talvez tenha ficado genérica a afirmação no parágrafo acima. Mas vou tentar mostrar algumas queries e explicar a usabilidade delas na prática em um banco hipotético.

Epaaa, para tudo — é muito importante de verdade —: ao final de toda expressão SQL, é preciso inserir o ;.

INSERT INTO clientes (nome, email, idade) 
VALUES ('Ana Silva', 'ana.silva@email.com', 28);
Enter fullscreen mode Exit fullscreen mode

Na primeira linha, teremos o INSERT INTO, que está dizendo: "Preciso inserir dados dentro de".

Seguido pela tabela que receberá os valores, chamada de clientes.

Dentro dos parênteses teremos (nome, email, idade), que é a lista das colunas da tabela que irão receber os dados.

Na segunda linha, teremos o VALUES, que indica que os dados reais a serem salvos no banco de dados serão informados logo em seguida.

Seguido por ('Ana Silva', 'ana.silva@email.com', 28);, que representa cada informação enviada na mesma sequência das colunas informadas anteriormente. Não se esqueça do ;!

SELECT nome, email FROM clientes WHERE id = 1;
Enter fullscreen mode Exit fullscreen mode

Bora para a segunda: o comando SELECT vai dizer:
"Busque/Traga os seguintes campos".

Seguido pelas colunas que deseja ver no resultado: nome, email.

A expressão FROM indica a origem dos dados (a tradução literal: "DE" ou "A PARTIR DE"), seguida da tabela que será utilizada como origem para a busca dos dados, clientes.

O WHERE será utilizado como filtro (a tradução literal é "ONDE"). Ele vai assegurar que você não receba a tabela inteira, mas apenas os dados que atendam à condição desejada.

Logo após, será informado id = 1, que é a condição do filtro. Logo, o banco vai retornar a linha em que a coluna id for igual a 1.

Maneiro, né? 😎

O SQL tem também outros tópicos e definições importantes que você também pode buscar. Como, por exemplo, as Constraints (tradução literal: "Restrições" ou "Regras"), que são as regras aplicadas às colunas de uma tabela para assegurar a integridade, consistência e qualidade dos dados.

Em termos rústicos, elas vão servir para que não seja possível inserir dados inválidos no seu banco, baseando-se sempre na lógica por trás do modelo de negócio. Por exemplo, se o seu modelo de negócio exige que um usuário tenha um e-mail único para criar uma conta ou que o preço de um produto nunca seja um valor negativo, são as Constraints (UNIQUE e CHECK) que vão garantir que essa regra seja cumprida direto no banco de dados.

Por isso, sem querer jogar água no chopp de ninguém, o que vimos aqui é só a pontinha do iceberg de uma linguagem super ampla e cheia de possibilidades!

Agradeço pela atenção e pelo tempo dedicados a esta leitura. Isso é muito importante para mim! 😁

MATERIAIS RELACIONADOS


Nota: Este conteúdo foi criado por autor humano e revisado por um agente de Inteligência Artificial.

Top comments (0)