Primeiros passos com o SQL

Primeiros passos com o SQL

SQL é a sigla para Structured Query Language, ou Linguagem de Consulta Estruturada. É uma linguagem de programação que é utilizada para trabalhar com o que chamamos de banco de dados relacionais.

Você deve estar se perguntando: mas o que é um Banco de dados relacional? Em resumo, é um banco de dados que armazena e fornece acesso a pontos de dados relacionados entre si, uma maneira intuitiva e direta de representar dados em tabelas. Neste artigo você aprenderá mais sobre o que é SQL e suas principais vantagens.

O que é SQL?

O SQL foi desenvolvido pelos laboratórios da IBM (International Business Machines Corporation) na década de 70, tendo sido padronizado a partir da década de 80, se tornando a linguagem padrão para o gerenciamento de informações em um Banco de Dados Relacional.

De modo geral, um banco de dados relacional armazena os dados em formatos similares a tabelas, sendo possível construir relações entre si, sendo mais fácil a inserção e a recuperação de informações.

Com o SQL é possível realizar consultas à base de dados, informando vários tipos de parâmetros, claro que seguindo as regras, sintaxe e normas da linguagem, com isso pode-se obter grandes quantidades de informações vindo de diferentes tabelas, com pouquíssimas ou apenas uma só instrução dependendo do caso.

Como começar a utilizar o SQL?

O primeiro passo para aprender a utilizar o SQL é saber que a linguagem se trata de uma linguagem declarativa, sendo assim iremos nos preocupar menos em como as coisas funcionam e teremos como foco informar o que desejamos fazer, combinando um conjunto de comandos que já é disponibilizado pela própria linguagem.

Esses comandos da linguagem são divididos em conjuntos, essa separação é feita de acordo com o que cada comando tem como função. Se um comando tiver uma atividade similar a outro comando, estes serão agrupados no mesmo conjunto.

A seguir veremos quais são esses conjuntos e faremos alguns exemplos com os comandos que são mais utilizados.

DDL - Data Definition Language

Este conjunto de comandos lida com os objetos, criando bancos de dados, tabelas, campos, esquemas.É nesse conjunto que temos funções como:

CREATE - Cria uma estrutura.

ALTER - Altera uma estrutura.

DROP - Exclui uma estrutura.

Exemplo:

DML - Data Manipulation Language

É o conjunto em que é trabalhada a parte de manipulação dos dados. Este conjunto possui as funções:

INSERT - Insere dados.

UPDATE - Altera dados.

DELETE - Deleta dados.

Exemplo:

DQL - Data Query Language

É o conjunto de dados que trabalha mais na parte das consultas. É esse conjunto de sintaxes que nos permite fazer todas as buscas que precisamos no banco de dados.

Possui sintaxes como:

SELECT - Retorna dados de uma tabela.

ORDER BY - Ordena os dados de uma tabela.

GROUP BY - Deleta os dados de uma tabela.

Também teremos funções aritméticas, filtros de seleção, etc. Todas essas sintaxes são trabalhadas no conjunto DQL.

Exemplo:

No caso do exemplo acima, vale destacar que algumas literaturas colocam o SELECT como parte do conjunto DML, já que a função do mesmo seria a recuperação de dados.

Alguns conjuntos mais específicos são:

DTL - Data Transaction Language

Este é o conjunto de dados utilizado para realizar transações dentro do Banco de Dados.

Essas transações são realizadas através das seguintes funções:

START/BEGIN TRANSACTION - Comando que dá início a transação.

COMMIT - Confirma/Concretiza a transação.

ROLLBACK - Anula uma transação.

PS: Esse é um conjunto que muitas vezes nos salva/previne de fazermos alterações que não deveriam ser feitas em seu banco de dados. Pois esse conjunto de comandos nos permite realizar algo parecido com um backup antes de realizar alguma alteração no banco de dados SQL.

Exemplo:


DCL - Data Control Language

Mais um conjunto de extrema importância para realizarmos o controle de acesso ao banco de dados.

Para esse conjunto de comando usamos as sintaxes GRANT e REVOKE:

GRANT - Habilita o acesso a dados e operações.

REVOKE - Revoga o acesso a dados e operações.


Dentre essas subdivisões do SQL, DDL e DML/DQL estão os comandos mais utilizados. No DDL temos os comandos voltados aos objetos que compõem um Banco de Dados, nele temos o próprio banco, as tabelas, os usuários, dentre outras coisas. Já no DML/DQL você encontrará os comandos para a manipulação dos dados.

Depois dessa breve explicação, iremos ver agora alguns comandos do grupo DDL com exemplos de código. Não se preocupe em entender a fundo cada comando, em breve, trarei novos artigos tratando de forma mais aprofundada cada um deles.

Tendo em vista que os principais comandos agrupados no grupo DDL são:

  • CREATE TABLE.
  • DROP TABLE.
  • ALTER TABLE.
  • TRUNCATE.

Traremos a seguir exemplos com cada um deles.

Exemplo 1

Abaixo, teremos a criação de uma tabela SQL. O comando CREATE TABLE cria uma tabela, que no nosso caso terá o nome de Usuário. O conteúdo da tabela é inserido dentro dos parênteses, onde teremos as colunas e suas props (propriedades). Abaixo teremos a criação de uma tabela com três colunas, cada uma com seu respectivo nome e tipo.

Exemplo 2

Abaixo, teremos a exclusão de uma tabela SQL. O comando DROP TABLE serve para exclusão da tabela desejada do banco de dados. Vale lembrar que o DROP TABLE não só irá excluir a tabela, como todo o conteúdo que está inserido nela. Ficando da seguinte forma:


Exemplo 3

Caso você deseje que a tabela tenha sua estrutura alterada, você utilizará o comando ALTER TABLE no exemplo abaixo, teremos um exemplo na qual adicionaremos uma coluna a tabela Usuário.


Exemplo 4

Diferente do comando DROP TABLE citado acima, o comando TRUNCATE excluirá todos os registros de uma tabela, mas não irá excluir a tabela em si, deixando-a da mesma forma em que foi criada anteriormente.


Agora iremos entrar no conjunto DML/DQL utilizados para a manipulação dos dados nas tabelas do Banco de Dados SQL.

Os principais comandos agrupados no DML e DQL são:

  • INSERT.
  • DELETE.
  • UPDATE.
  • SELECT.

Exemplo 5

Podemos inserir nossos registros numa tabela com o comando INSERT. Nesse comando informamos quais colunas queremos inserir os dados e quais os valores que iremos colocar nos campos desejados.


Exemplo 6

Quando desejamos a exclusão de registros, temos o comando DELETE, que pode ser usado com o que chamamos de “cláusula” WHERE. Caso o WHERE não seja utilizado o comando DELETE irá excluir todos os dados da tabela.

Abaixo demonstro as 2 formas:


Exemplo 7

Caso a necessidade do desenvolvedor não seja a adição ou remoção de dados na tabela SQL mas sim a de atualizar algo na mesma, temos o comando UPDATE que assim como o DELETE, pode ser acompanhado da cláusula WHERE.

Ficando basicamente da mesma forma que utilizamos no exemplo acima, da mesma forma que o DELETE, caso o WHERE não seja utilizado, todos os dados da tabela serão atualizados. Neste exemplo também utilizaremos o SET para “setarmos” o valor desejado na tabela SQL. Ficará da seguinte forma:



Exemplo 8

Agora com o comando SELECT, iremos obter os dados da tabela que vão ser selecionados de acordo com a consulta desejada. Nesse comando devemos indicar a tabela que iremos recuperar os dados, a condição dos registros a serem recuperados, etc. No código abaixo entenderemos como acontece na prática.


Para entendermos o passo a passo do que está acontecendo, irei explicar como a instrução acima irá funcionar. O termo SELECT é utilizado para informar qual ou quais campos devem ser recuperados, logo em seguida temos o termo FROM que indica de qual tabela os dados serão retornados e por último, mas não menos importante, temos o termo WHERE que determina uma condição para que os dados sejam obtidos. No exemplo acima utilizei o WHERE, utilizando o campo de nome “Roberto” para retornar os dados que se enquadrem nessa condição.

Você deve estar se perguntando: E se eu quiser fazer uma consulta com mais de uma tabela sendo utilizada?

No exemplo abaixo explicarei como fazer isso.

Em breve traremos um artigo que vai detalhar melhor a cláusula JOIN, aqui trarei de forma menos detalhada apenas para o entendimento. A cláusula JOIN é uma forma de lidar com dados buscando relacionar dois conjuntos de dados na base, sendo muito útil em diversas operações.

O JOIN tem 4 métodos diferentes baseado em conjuntos INNER JOIN, LEFT JOIN, RIGHT JOIN e FULL JOIN. Abaixo utilizarei o INNER JOIN que é um dos mais conhecidos e tem como função retornar os valores em comum de ambas as tabelas.


Suponhamos que acima temos uma tabela com vários estudantes e vários professores, cada um com seu nome e id, note que utilizaremos estudantes como “e” e professores como “p”.

O retorno do INNER JOIN acima, será uma nova tabela mostrando os diferentes ids de cada pessoa cadastrada, tanto estudante (“e”) quanto professor (“p”), tendo em vista que o id sempre será uma chave única para cada um e mostrando também os nomes iguais que existem tanto na tabela estudantes quanto na tabela professores.


Podemos concluir que a linguagem SQL tem uma grande importância para manipulação, remoção, inserção e mais dentro de um Banco de Dados relacional, ajudando na criação de diversas soluções para bancos de dados que vão desde algo mais simples até algo mais complexo.

Até logo!

💡
As opiniões e comentários expressos neste artigo são de propriedade exclusiva de seu autor e não representam necessariamente o ponto de vista da Revelo.

A Revelo Content Network acolhe todas as raças, etnias, nacionalidades, credos, gêneros, orientações, pontos de vista e ideologias, desde que promovam diversidade, equidade, inclusão e crescimento na carreira dos profissionais de tecnologia.