🗑️ DELETE no MySQL

Introdução

O comando DELETE é utilizado para remover registros armazenados em uma tabela do banco de dados.

Ele faz parte da linguagem DML (Data Manipulation Language) e atua diretamente sobre os dados existentes.

📌 DELETE remove registros da tabela, mas não remove a estrutura da tabela.

Quando Utilizar DELETE?

Sintaxe Básica

DELETE FROM nome_tabela

WHERE condição;

Tabela de Exemplo

CREATE TABLE clientes (

id INT PRIMARY KEY,

nome VARCHAR(100),

cidade VARCHAR(100)

);

Dados Existentes

+----+--------+-----------+

| ID | Nome   | Cidade    |

+----+--------+-----------+

| 1  | Carlos | Campinas  |

| 2  | Ana    | Rio       |

| 3  | Pedro  | São Paulo |

+----+--------+-----------+

Removendo um Registro

Excluindo o cliente com ID igual a 2:

DELETE FROM clientes

WHERE id = 2;

Resultado da Exclusão

+----+--------+-----------+

| ID | Nome   | Cidade    |

+----+--------+-----------+

| 1  | Carlos | Campinas  |

| 3  | Pedro  | São Paulo |

+----+--------+-----------+

Removendo Vários Registros

Podemos excluir diversos registros utilizando uma condição.

DELETE FROM clientes

WHERE cidade = 'Campinas';

DELETE sem WHERE

Se a cláusula WHERE for omitida, todos os registros da tabela serão removidos.

DELETE FROM clientes;
⚠️ Cuidado! Esse comando apaga todos os registros da tabela.

DELETE x DROP

DELETE DROP
Remove registros Remove tabela inteira
Mantém estrutura Remove estrutura e dados
Faz parte do DML Faz parte do DDL

DELETE x TRUNCATE

DELETE TRUNCATE
Pode usar WHERE Não usa WHERE
Remove registros específicos Remove todos os registros
Mais flexível Mais rápido para limpeza total

Integridade Referencial

Em tabelas relacionadas, a exclusão pode ser bloqueada por chaves estrangeiras.

DELETE FROM clientes

WHERE id = 1;

Se existirem registros dependentes, o banco poderá impedir a exclusão.

Erros Comuns

Erro Causa
Excluir tudo sem querer Esquecer o WHERE
Registro não encontrado Condição incorreta
Violação de relacionamento Chave estrangeira existente
Perda de dados Ausência de backup

Aplicações no Mundo Real

Sistema Exemplo de Exclusão
E-commerce Remover produtos descontinuados
Escola Excluir matrículas canceladas
Hospital Remover registros de testes
Empresa Excluir dados temporários

Boas Práticas

Resumo da Aula

🎓 Aula concluída! Agora você sabe utilizar o comando DELETE para remover registros de tabelas no MySQL.