A linguagem SQL é essencial para toda pessoa profissional interessada em dados. Isso porque é a linguagem padrão para bancos de dados relacionais, usada por todas as principais plataformas de gerenciamento. Conhecer a fundo a SQL e seus subconjuntos permite o manuseio de dados em todo o potencial que os bancos têm a nos oferecer!

Com a quantidade de siglas e a vastidão de comandos em cada uma, a SQL e seus subconjuntos podem assustar no início. DDL, DQL, DML, DCL, DTL e TCL são todas siglas das categorias de comandos dessa linguagem. Mas, não se preocupe! É mais simples do que parece. 

Os comandos dos subconjuntos do SQL são bastante completos e fáceis de aprender. Além de seu domínio ser um grande diferencial no mercado de trabalho. Eles permitem definir, consultar, manipular, controlar permissões e fazer transações no banco de dados. São imensas as possibilidades, veremos como usar essa linguagem.

O que é a linguagem SQL? 

subcomandos sql

A SQL, ou Structure Query Language, é uma linguagem padrão para comunicação com bancos de dados relacionais. Saber SQL é fundamental para lidar com bancos de dados relacionais, já que as principais plataformas de bancos de dados dessa categoria a utilizam. Oracle, SQLServer, MySQL e PostGreSQL, quatro dos principais bancos de dados, utilizam como base a SQL. 

A SQL pode até parecer complexa, mas usa de estruturas muito simples e até intuitivas. Create, rename, select, alter, update, insert e delete são alguns exemplos de comandos. A SQL serve para consulta, controle e manipulação de dados; as possibilidades são múltiplas!

Diante da riqueza de ferramentas dessa linguagem, existem categorias que englobam os comandos. As diversas possibilidades de operações da SQL estão divididas em cinco grupos. Cada um desses subconjuntos foca em um conjunto de instruções. Veremos aqui cada um deles e como usá-los.

  • DDL
  • DQL
  • DML
  • DCL
  • DTL ou TCL

Como surgiu o SQL? Breve história!

A linguagem SQL surgiu ainda nos anos 70. Foi criada pela IBM (International Business Machine Corporation), no laboratório de San Jose, Califórnia, em um estudo do matemático E. F. Codd. O primeiro acrônimo dessa tecnologia foi Sequel. Apesar da criação ser da IBM, a Oracle Corporation foi a primeira a comercializar de fato a ferramenta.

Já em meados da década de 80, a ANSI (American National Standard Institute) e a ISO (International Organization for Standardization), duas agências reguladoras, fizeram o trabalho de padronizar. A primeira normalização do SQL foi em 1986, com diversas atualizações seguintes, que a tornaram o que a gente conhece hoje. 

Quais as vantagens de usar SQL?

A maioria dos sistemas de bancos de dados usa SQL, é então fundamental a uma pessoa profissional de dados capacitada saber manejá-la. Oracle, MySQL, SQLServer, PostgreSQL, Informix, Microsoft Access são alguns dos sistemas de gerenciamento mais populares que a utilizam.

Trata-se de uma linguagem estável, amplamente usada desde sua criação, lá na década de 70. Além disso, exatamente por ser muito difundida, é essencial à pessoa profissional que pretende se diferenciar no mercado de trabalho.

A SQL ainda se destaca, sobretudo, por ser fácil de aprender. Baseia-se em comandos simples, quase intuitivos. É uma linguagem vasta e completa, com a qual é possível definir, manipular, consultar, controlar e fazer transações no banco de dados.

Quais os tipos/subconjuntos da linguagem SQL?

A SQL possui cinco subconjuntos, responsáveis pelas operações de definição, manipulação, consulta, transação e controle. Veremos a seguir cada um deles.

DDL: linguagem de definição de dados

A DDL (Data Definition Language) engloba os comandos de definição do banco de dados. Interagem com os objetos do banco. São eles: 

  • CREATE

De modo geral, o comando Create cria objetos. Pode ser usado para criar desde novos bancos de dados completamente zerados a tabelas específicas. No exemplo, estamos criando uma tabela para os dados de estudantes.



CREATE TABLE estudantes;
  • DROP

O comando Drop exclui objetos do banco de dados. Essa remoção de tabelas envolve todas as linhas, privilégios e índices. Na aplicação, o drop não necessita de nenhuma cláusula adicional.



DROP DATABASE unidade_centro;
  • ALTER

O ALTER altera objetos já existentes, seja modificando, excluindo ou adicionando. No exemplo a seguir, alteramos a tabela estudantes excluindo a coluna nome. No mesmo caso, vemos também o uso do DROP.


ALTER TABLE estudantes
DROP COLUMN nome;
  • TRUNCATE

Exclui todo o conteúdo de uma tabela e redefine sua identidade para o valor inicial. Essa exclusão envolve também os espaços destinados aos registros. Trata-se de uma operação que não pode ser revertida.

  • COMMENT

É uma função usada para fazer um comentário explicativo ou impedir a execução de uma linha de SQL pelo sistema. Esse princípio, a possibilidade de fazer comentários, é comum a outras linguagens de programação, representado por diferentes símbolos. 

Existem duas opções de COMMENT no SQL: simbolizado por dois traços ( — ), estando tudo posterior a eles na linha automaticamente anulado na execução do código, ou por meio da utilização de um asterisco e uma barra (/*), que necessita ser aberto antes do início do comentário, e fechado, após o fim deste. O primeiro, de dois traços, é usado para comentários de apenas uma linha. O segundo, o comentário multilinhas, para aqueles com duas ou mais. Vejamos exemplos:

-- atencao para aniversario
 
 
/* Dois estudantes comemoram aniversario em data diferente da que foram registrados */
  • RENAME

É um comando bastante simples, sua função é renomear objetos. Na sintaxe, é preciso citar qual objeto sofrerá a alteração e qual será o novo nome.



RENAME TABLE estudantes TO alunos;

DQL: linguagem de consulta de dados

A DQL (Data Query Language) é o subconjunto responsável por comandos de consulta aos dados armazenados. Dentro dele, encontramos apenas o comando Select. É importante observar que em alguns materiais acadêmicos essa instrução aparece incorporada no conjunto DML, que veremos mais a seguir.

  • SELECT

Esse comando é um dos mais importantes da SQL, pois é ele quem possibilita a consulta a dados de uma tabela. De modo geral, o Select recupera dados de determinado lugar. Os dados recuperados pelo Select são armazenados em uma nova tabela, chamada conjunto de resultados. É um comando que tem a possibilidade de ser estruturado de forma a fazer consultas mais simples ou mais complexas.



  SELECT aniversario FROM estudantes;

DML: linguagem de manipulação de dados

A DML (Data Manipulation Language) corresponde aos comandos de manipulação dos dados. Composta de apenas três comandos, envolve interações de armazenamento, modificação, exclusão, inserção e atualização.

  • INSERT

Essa instrução insere dados a uma ou mais tabelas. Na sua estrutura, deve ser acompanhada de INTO. Vejamos um exemplo:



INSERT INTO estudantes (matricula, nome, aniversario) values (1776, Joana, 21 abr. 1987);

  • UPDATE

Atualiza os dados existentes em uma ou mais tabelas. Deve ser usado com a cláusula WHERE, para que se saiba em que linha será a atualização dos dados. Caso seja utilizado sem o WHERE, atualiza todos os registros. Como exemplo do segundo caso:



   UPDATE estudantes;

  • DELETE

Exclui os registros de uma tabela ou mais. Quando não acompanhado de uma cláusula, todas as linhas são removidas.



  DELETE FROM estudantes WHERE matricula = 1776;

DCL: linguagem de controle de dados

            Esse subconjunto do SQL envolve comandos relacionados à segurança do banco de dados. A DCL (Data Control Language) controla o acesso aos dados, tanto concedendo privilégio de acesso, quanto retirando a permissão do usuário ou usuária.

  • GRANT

Fornece a determinada pessoa o privilégio de acesso dentro do banco de dados. No exemplo a seguir, estamos permitindo a Luiz consultar os dados da tabela estudantes.



GRANT SELECT ON estudantes TO Luiz;

  • REVOKE

Esse comando retira os privilégios de acesso. Ou seja, faz a operação inversa ao GRANT, negando a permissão. A seguir, vamos desfazer o que fizemos com GRANT. Para isso, utilizaremos o FROM.



REVOKE SELECT ON estudantes FROM Luiz;

DTL ou TCL: linguagem de transação de dados

A DTL ou TCL (Data Transaction Language) é um subconjunto do SQL para transação de dados. A DTL envolve gerenciamento e controle de transações. 

  • BEGIN/SET TRANSACTION

Tanto o comando BEGIN TRANSACTION quanto o SET TRANSACTION indicam o início de uma transação. Devem ser usados imediatamente no começo do código, registrando que tudo que vem abaixo faz parte da mesma transação. A diferença entre BEGIN TRANSACTION e SET TRANSACTION está que na segunda pode-se atribuir especificações a respeito daquela transação, como, por exemplo, se será apenas para leitura. 

  • COMMIT

Se a instrução BEGIN/ SET TRANSACTION inicia uma transação, a COMMIT a finaliza. O comando indica o fim de cada transação, salvando o que foi feito na transação atual. O COMMIT aparece no final daquela transação em específico, fechando o que foi aberto pelo BEGIN/SET TRANSACTION.

A seguir, vejamos um exemplo de início e fim de uma transação, usando os comandos BEGIN TRANSACTION e COMMIT.

BEGIN TRANSACTION
DELETE FROM estudantes WHERE matricula = 1776;
COMMIT;
  • ROLLBACK

O comando Rollback reverte uma transação. Na prática, restaura o banco de dados desde a última vez que o comando COMMIT foi aplicado, garantindo apenas até onde as alterações já foram salvas. É um comando crucial, que pode ser usado em situações de erro.

  • SAVEPOINT

O SAVEPOINT define um ponto de salvamento dentro de uma transação, funciona como um “ponto de segurança”. Tudo que é anterior a ele não pode ser descartado com o comando ROLLBACK, apenas o que vem após. 

Como vimos, a linguagem SQL é fundamental para qualquer profissional interessado em dados. A SQL é simples, completa e de fácil compreensão. Seus diferentes comandos, categorizados em subconjuntos, permitem uma infinidade de manipulações. 

Agora que você já entendeu o que são os subconjuntos SQL DDL, DQL, DML, DCL e DTL e seus diferentes comandos, veja ainda mais detalhadamente como pesquisar valores similares em uma coluna com SQL.

0 Shares:
Deixe um comentário
Você também pode gostar