Comandos SQL: DML, DDL, DCL, TCL, DQL com exemplo de consulta

O que รฉ SQL?

SQL รฉ uma linguagem de banco de dados projetada para recuperaรงรฃo e gerenciamento de dados em um banco de dados relacional.

SQL รฉ a linguagem padrรฃo para gerenciamento de banco de dados. Todos os sistemas RDBMS como MySQL, Acesso MS, Oracle, Sybase, Postgres e SQL Server usam SQL como linguagem de banco de dados padrรฃo. A linguagem de programaรงรฃo SQL usa vรกrios comandos para diferentes operaรงรตes. Aprenderemos sobre comandos como DCL, TCL, DQL, DDL e DML em SQL com exemplos.

Por que usar SQL?

Aqui estรฃo razรตes importantes para usar SQL

  • Ajuda os usuรกrios a acessar dados no Sistema RDBMS.
  • Isso ajuda vocรช a descrever os dados.
  • Ele permite definir os dados em um banco de dados e manipular esses dados especรญficos.
  • Com a ajuda de comandos SQL no SGBD, vocรช pode criar e eliminar bancos de dados e tabelas.
  • SQL oferece a vocรช o uso da funรงรฃo em um banco de dados, a criaรงรฃo de uma visualizaรงรฃo e um procedimento armazenado.
  • Vocรช pode definir permissรตes em tabelas, procedimentos e visualizaรงรตes.

Breve Histรณria do SQL

Aqui estรฃo marcos importantes do histรณria do SQL:

  • 1970 โ€“ Dr. Edgar F. โ€œTedโ€ Codd descreveu um modelo relacional para bancos de dados.
  • 1974 โ€“ Surgiu a linguagem de consulta estruturada.
  • 1978 - IBM lanรงou um produto chamado System/R.
  • 1986 - IBM desenvolveu o protรณtipo de um banco de dados relacional, padronizado pela ANSI.
  • 1989- Lanรงada a primeira versรฃo do SQL
  • 1999 โ€“ SQL 3 lanรงado com recursos como gatilhos, orientaรงรฃo a objetos, etc.
  • SQL2003- funรงรตes de janela, recursos relacionados a XML, etc.
  • SQL2006- Suporte para linguagem de consulta XML
  • Suporte aprimorado do SQL2011 para bancos de dados temporais

Tipos de SQL

Aqui estรฃo cinco tipos de consultas SQL amplamente utilizadas.

  • Data Definition Language (DDL)
  • Data Manipulation Language (DML)
  • Linguagem de controle de dados (DCL)
  • Linguagem de controle de transaรงรฃo (TCL)
  • Linguagem de consulta de dados (DQL)
Tipos de SQL
Tipos de SQL

Vamos ver cada um deles em detalhes:

O que รฉ DDL?

A linguagem de definiรงรฃo de dados ajuda vocรช a definir a estrutura ou esquema do banco de dados. Vamos aprender sobre comandos DDL com sintaxe.

Cinco tipos de comandos DDL em SQL sรฃo:

CRIAR

As instruรงรตes CREATE sรฃo usadas para definir o esquema da estrutura do banco de dados:

Sintaxe:

CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);

Por exemplo:

Create database university;
Create table students;
Create view for_students;

GOTA

Os comandos Drops removem tabelas e bancos de dados do RDBMS.

Sintaxe

DROP TABLE ;

Por exemplo:

Drop object_type object_name;
Drop database university;
Drop table student;

ALTERAR

O comando Alters permite alterar a estrutura do banco de dados.

Sintaxe:

Para adicionar uma nova coluna na tabela

ALTER TABLE table_name ADD column_name COLUMN-definition; 

Para modificar uma coluna existente na tabela:

ALTER TABLE MODIFY(COLUMN DEFINITION....);  

Por exemplo:

Alter table guru99 add subject varchar; 

TRUNCAR

Este comando serve para deletar todas as linhas da tabela e liberar o espaรงo que contรฉm a tabela.

Sintaxe:

TRUNCATE TABLE table_name;  

Exemplo:

TRUNCATE table students;

O que รฉ linguagem de manipulaรงรฃo de dados?

A linguagem de manipulaรงรฃo de dados (DML) permite modificar a instรขncia do banco de dados inserindo, modificando e excluindo seus dados. ร‰ responsรกvel por realizar todos os tipos de modificaรงรฃo de dados em um banco de dados.

Existem trรชs construรงรตes bรกsicas que permitem ao programa de banco de dados e ao usuรกrio inserir dados e informaรงรตes:

Aqui estรฃo alguns comandos DML importantes em SQL:

  • INSIRA
  • ATUALIZAร‡รƒO
  • EXCLUIR

INSIRA

Esta รฉ uma instruรงรฃo que รฉ uma consulta SQL. Este comando รฉ usado para inserir dados na linha de uma tabela.

Sintaxe:

INSERT INTO TABLE_NAME  (col1, col2, col3,.... col N)  
VALUES (value1, value2, value3, .... valueN);  
Or 
INSERT INTO TABLE_NAME    
VALUES (value1, value2, value3, .... valueN);    

Por exemplo:

INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');

ATUALIZAร‡รƒO

Este comando รฉ usado para atualizar ou modificar o valor de uma coluna da tabela.

Sintaxe:

UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]   

Por exemplo:

UPDATE students    
SET FirstName = 'Jhon', LastName= 'Wick' 
WHERE StudID = 3;

EXCLUIR

Este comando รฉ usado para remover uma ou mais linhas de uma tabela.

Sintaxe:

DELETE FROM table_name [WHERE condition];  

Por exemplo:

DELETE FROM students 
WHERE FirstName = 'Jhon';

O que รฉ DCL?

DCL (Data Control Language) inclui comandos como GRANT e REVOKE, que sรฃo รบteis para conceder โ€œdireitos e permissรตesโ€. Outras permissรตes controlam parรขmetros do sistema de banco de dados.

Exemplos de comandos DCL

Comandos incluรญdos no DCL:

  • Conceda
  • Revok

Conceda

Este comando รฉ usado para conceder privilรฉgios de acesso ao usuรกrio a um banco de dados.

Sintaxe:

GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;  

Por exemplo:

GRANT SELECT ON Users TO'Tom'@'localhost;

Revok

ร‰ รบtil apoiar as permissรตes do usuรกrio.

Sintaxe:

REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}

Por exemplo:

REVOKE SELECT, UPDATE ON student FROM BCA, MCA;  

O que รฉ TCL?

A linguagem de controle de transaรงรฃo ou comandos TCL lidam com a transaรงรฃo dentro do banco de dados.

COMPROMETA-SE

Este comando รฉ usado para salvar todas as transaรงรตes no banco de dados.

Sintaxe:

Commit;

Por exemplo:

DELETE FROM Students  
WHERE RollNo =25;  
COMMIT;  

Rollback

O comando Rollback permite desfazer transaรงรตes que ainda nรฃo foram salvas no banco de dados.

Sintaxe:

ROLLBACK;  

Exemplo:

DELETE FROM Students  
WHERE RollNo =25;  

SALVAR PONTO

Este comando ajuda vocรช a definir um ponto de salvamento em uma transaรงรฃo.

Sintaxe:

SAVEPOINT SAVEPOINT_NAME;

Exemplo:

SAVEPOINT RollNo;

O que รฉ DQL?

Data Query Language (DQL) รฉ usada para buscar os dados do banco de dados. Ele usa apenas um comando:

SELECIONE

Este comando ajuda vocรช a selecionar o atributo com base na condiรงรฃo descrita pela clรกusula WHERE.

Sintaxe:

SELECT expressions    
FROM TABLES    
WHERE conditions;  

Por exemplo:

SELECT FirstName  
FROM Student  
WHERE RollNo > 15;  

Resumo

  • SQL รฉ uma linguagem de banco de dados projetada para recuperaรงรฃo e gerenciamento de dados em um banco de dados relacional.
  • Ajuda os usuรกrios a acessar dados no sistema RDBMS
  • No ano de 1974, surgiu o termo Structured Query Language
  • Cinco tipos de consultas SQL sรฃo 1) Linguagem de definiรงรฃo de dados (DDL) 2) Linguagem de manipulaรงรฃo de dados (DML) 3) Linguagem de controle de dados (DCL) 4) Linguagem de controle de transaรงรฃo (TCL) e 5) Linguagem de consulta de dados (DQL)
  • A linguagem de definiรงรฃo de dados (DDL) ajuda a definir a estrutura ou esquema do banco de dados.
  • A linguagem de manipulaรงรฃo de dados (DML) permite modificar a instรขncia do banco de dados inserindo, modificando e excluindo seus dados.
  • DCL (Data Control Language) inclui comandos como GRANT e REVOKE, que sรฃo รบteis para conceder โ€œdireitos e permissรตesโ€.
  • A linguagem de controle de transaรงรฃo ou comandos TCL lidam com a transaรงรฃo dentro do banco de dados.
  • Data Query Language (DQL) รฉ usada para buscar os dados do banco de dados.

Resuma esta postagem com: