O DML (Data Manipulation Language) é o conjunto de comandos SQL utilizado para manipular os dados armazenados dentro das tabelas de um banco de dados.
Diferente do DDL, que trabalha com a estrutura do banco, o DML trabalha diretamente com as informações armazenadas.
| Sigla | Significado |
|---|---|
| D | Data (Dados) |
| M | Manipulation (Manipulação) |
| L | Language (Linguagem) |
| DML | DDL |
|---|---|
| Manipula dados | Define estruturas |
| Trabalha com registros | Trabalha com tabelas |
| INSERT, UPDATE, DELETE, SELECT | CREATE, ALTER, DROP |
| Altera informações | Altera organização do banco |
| Comando | Função |
|---|---|
| INSERT | Adicionar novos registros |
| SELECT | Consultar informações |
| UPDATE | Alterar dados existentes |
| DELETE | Excluir registros |
Os comandos DML atuam sobre os registros armazenados nas tabelas.
Tabela CLIENTES
+----+-------------+
| ID | NOME |
+----+-------------+
| 1 | João |
| 2 | Maria |
+----+-------------+
O DML permite inserir, consultar, modificar ou remover essas informações.
O comando INSERT adiciona novos registros.
INSERT INTO clientes
(nome)
VALUES
('João');
O comando SELECT recupera informações armazenadas.
SELECT *
FROM clientes;
O comando UPDATE modifica registros existentes.
UPDATE clientes
SET nome = 'Pedro'
WHERE id = 1;
O comando DELETE remove registros.
DELETE FROM clientes
WHERE id = 1;
Os comandos DML podem participar de transações para garantir segurança nas alterações.
START TRANSACTION;
UPDATE conta
SET saldo = saldo - 100;
COMMIT;
Caso ocorra algum problema, podemos desfazer utilizando ROLLBACK.
| Sistema | Uso do DML |
|---|---|
| E-commerce | Cadastro de produtos e pedidos |
| Banco | Movimentações financeiras |
| Escola | Cadastro de alunos e notas |
| Hospital | Registro de pacientes |