Início / Artigos / Comandos SQL para Leigos: Parte 4
Comandos SQL para Leigos: Parte 4

COMANDOS SQL PARA LEIGOS: PARTE 4

Usando o comando DELETE e suas implicações

0.0
Ronaldo C Wudarski

Ronaldo C Wudarski

Fundador & Arquiteto-Chefe

seguidores

28 Jul 2026
0 min de leitura
Publicada
0 visualizações

Comando DELETE

Comando DELETE
Comando DELETE

Usando o comando DELETE e suas implicações

Fechando o ciclo da nossa série, depois de consultar (SELECT), incluir (INSERT) e alterar (UPDATE), precisamos falar sobre remover dados do sistema.

O comando DELETE remove registros permanentemente de uma tabela. Assim como o UPDATE, ele é amplamente temido pela ausência de margem para erros e por seu impacto direto nas regras de integridade relacional de um banco de dados.

A Sintaxe do DELETE

O comando tem a estrutura mais enxuta entre todos, pois não precisamos especificar as colunas (já que a linha inteira será apagada).

Caso de Uso: Precisamos remover clientes de uma tabela temporária (tabela de staging).

DELETE FROM Clientes_Temp
WHERE IDCliente = 9876;

Mais uma vez: se você esquecer o WHERE, o banco de dados irá apagar todos os registros da tabela sem piscar. E, ao contrário do Word, o comando Ctrl+Z não existe após uma ação confirmada no banco, a menos que você tenha feito um backup ou utilizado uma Transação (BEGIN TRAN).

Integridade Relacional (Foreign Keys)

Diferente das planilhas de Excel, os bancos de dados relacionais possuem amarras estruturais chamadas "Chaves Estrangeiras" (Foreign Keys ou FKs).

Se você tentar excluir um cliente usando o DELETE que já tenha feito um "Pedido", o banco de dados geralmente abortará a instrução, gerando um erro de Constraint Violation. Isso acontece porque o SQL Server protege a integridade dos dados: não pode existir um pedido órfão, apontando para um ID de cliente que já foi removido.

Para excluir o cliente em cenários não produtivos, seria necessário apagar primeiro todos os filhos (pedidos, faturas, chamados) para só então apagar o pai (cliente).

Exclusão Física vs. Exclusão Lógica

Devido à integridade relacional e à importância histórica das informações (leis de auditoria, LGPD, relatórios), na prática corporativa, raramente executamos comandos DELETE em tabelas principais (como Vendas, Clientes ou Contratos).

O padrão do mercado é utilizar a Exclusão Lógica (Soft Delete). Em vez de rodar um DELETE, criamos uma coluna na tabela (por exemplo, Ativo do tipo booleano/BIT, ou DataExclusao do tipo DATETIME) e executamos um UPDATE para inativar o registro.

-- Exclusão Lógica (O Recomendado)
UPDATE Clientes 
SET Ativo = 0, DataExclusao = GETDATE()
WHERE IDCliente = 9876;

Desta forma, os pedidos não ficam órfãos, mas nas telas do sistema da empresa, o cliente deixa de aparecer (bastando adicionar o filtro WHERE Ativo = 1 no código das aplicações).

Conclusão

Com isso, concluímos os quatro pilares essenciais para entender e manipular dados utilizando SQL. Compreendendo o CRUD (Create, Read, Update, Delete), representado respectivamente por INSERT, SELECT, UPDATE e DELETE, você formou uma base sólida que será exigida em qualquer jornada técnica, de Engenharia de Software à Ciência de Dados.

Glossário de Termos

  • DELETE: Comando DML utilizado para remover definitivamente registros de uma tabela.
  • Foreign Keys (Chaves Estrangeiras): Regras estruturais de banco de dados que garantem a integridade relacional (ex: impedir que se apague um cliente que tem pedidos vinculados).
  • Constraint Violation: Erro gerado pelo banco de dados quando uma operação tenta quebrar alguma regra de integridade, como apagar um registro pai que possui registros filhos.
  • Exclusão Lógica (Soft Delete): Prática de não apagar fisicamente o dado, mas usar um UPDATE em uma coluna (como Ativo = 0) para ocultar o registro nas aplicações, preservando o histórico.
  • CRUD (Create, Read, Update, Delete): Acrônimo que representa as quatro operações básicas de armazenamento persistente.

Referências

  • BEN-GAN, Itzik. (2016). T-SQL Fundamentals. Microsoft Press.
  • CELKO, J. (2014). SQL for Smarties: Advanced SQL Programming. Morgan Kaufmann.
Ronaldo C Wudarski

Ronaldo C Wudarski

ronaldocw@msn.com

Fundador & Arquiteto-Chefe Autor

Comentários (0)

O que você achou deste post? Deixe seu comentário!

Por favor, faça para postar um comentário e verificar se você tem permissão.

Início Todos os Artigos