Programação

Subgrupos SQL: DDL, DQL, DML, DCL, DTL, TCL

Subgrupos do SQL: DDL, DML, DQL, DCL e TCL (DTL) com comandos, exemplos e a diferença entre cada sigla.

Capa: Subgrupos SQL: DDL, DQL, DML, DCL, DTL, TCL

Os comandos do SQL são divididos em grupos conforme sua função. Entender as siglas ajuda a estudar para provas e a organizar permissões.

SiglaNomeFunçãoComandos
DDLData Definition LanguageDefine e altera a estrutura do bancoCREATE, ALTER, DROP, TRUNCATE
DMLData Manipulation LanguageManipula os dadosINSERT, UPDATE, DELETE
DQLData Query LanguageConsulta dadosSELECT
DCLData Control LanguageControla permissõesGRANT, REVOKE
TCL / DTLTransaction Control / Data Transaction LanguageControla transaçõesCOMMIT, ROLLBACK, SAVEPOINT

Alguns autores incluem o SELECT na DML. DTL e TCL são nomes para o mesmo grupo.

Exemplos

DDL

CREATE TABLE produtos (id INT PRIMARY KEY, nome VARCHAR(80), preco DECIMAL(10,2));
ALTER TABLE produtos ADD COLUMN estoque INT DEFAULT 0;
DROP TABLE produtos;

DML e DQL

INSERT INTO produtos (id, nome, preco) VALUES (1, 'Mouse', 59.90);
UPDATE produtos SET preco = 49.90 WHERE id = 1;
DELETE FROM produtos WHERE id = 1;
SELECT nome, preco FROM produtos WHERE preco < 100;

DCL

GRANT SELECT, INSERT ON loja.produtos TO 'app'@'localhost';
REVOKE INSERT ON loja.produtos FROM 'app'@'localhost';

TCL

START TRANSACTION;
UPDATE contas SET saldo = saldo - 100 WHERE id = 1;
UPDATE contas SET saldo = saldo + 100 WHERE id = 2;
COMMIT;      -- ou ROLLBACK para desfazer

Dica

DELETE remove linhas (com WHERE) e pode ser desfeito em transações; TRUNCATE esvazia a tabela inteira e DROP remove a tabela. Em vários bancos, comandos DDL confirmam a transação automaticamente.

Mais artigos