MySQL – DELETE e TRUNCATE TABLE – Excluir registros de uma tabela – 16

Excluir Registros de uma Tabela no MySQL com DELETE e TRUNCATE TABLE

Uma das tarefas mais comuns na manutenção de tabelas de bancos de dados é a exclusão de registros (linhas). É muito comum, por exemplo, excluir um produto de uma tabela que não é mais ofertado por uma loja, ou um cliente que se descadastrou de um sistema.

Além disso, em algumas situações muito especiais, pode ser necessário excluir todos os registros de uma tabela – ou seja, limpar a tabela.

Podemos excluir registros de uma tabela com SQL por meio de duas declarações: DELETE FROM e TRUNCATE TABLE.

Excluir um ou mais registros especificados – Cláusula DELETE

Com a cláusula DELETE podemos excluir registros específicos, indicados (filtrados) por meio de uma condição na cláusula WHERE

Sintaxe:

DELETE FROM tabela WHERE coluna = valor;

Exemplo – vamos excluir o autor da tabela de autores cujo id de autor é igual a 2:

DELETE FROM tbl_autores
WHERE ID_Autor = 2;

Obs.: Sempre use a cláusula WHERE para evitar a perda de dados da tabela, caso contrário todos os registros serão excluídos, uma a um!

TRUNCATE TABLE

O comando TRUNCATE TABLE permite remover todas as linhas de uma tabela em uma única operação, sem registrar as exclusões de linhas individuais.

O TRUNCATE TABLE equivale a executar a instrução DELETE, porém sem usar a cláusula WHERE. Portanto, é usada para apagar completamente o conteúdo de uma tabela no MySQL.

Entretanto, a cláusula TRUNCATE TABLE é mais rápida e utiliza menos recursos de sistema e log de transações durante sua execução.

Exemplo

Exemplo: Vamos excluir todos os registros presentes na tabela tbl_teste_incremento:

TRUNCATE TABLE tbl_teste_incremento;

O vídeo a seguir mostra o uso das cláusulas apresentadas nesta lição, para realizar a exclusão de registros em tabelas no MySQL:

 

Sobre Fábio dos Reis (1366 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

5 Comentários em MySQL – DELETE e TRUNCATE TABLE – Excluir registros de uma tabela – 16

  1. gostei valeu!!!

  2. excelente dica… excelente professor

  3. Amigo, preciso excluir somente os registros da tabela pai que não tem nenhum registro na tabela filho e vice e versa. Como fazer?

Escreva um comentário

Seu e-mail não será divulgado


*