Php

Mysql – Deletar vários registros usando um único comando sql

Estou trabalhando em um projeto de automação de inserção de conteúdo, o resultado do processo de automação é um arquivo sql que o administrador do site irá executar diretamente no phpMyAdmin. Entretanto, tive um pouco de dificuldades de criar um comando sql que exclui vários registros de uma vez.

Inicialmente eu tinha pensado em realizar um script com o seguinte resultado:

Delete From `classificados_vendo_site` where id_vendo = 54567;
Delete From `classificados_vendo_site` where id_vendo = 54568;
Delete From `classificados_vendo_site` where id_vendo = 54569;
Delete From `classificados_vendo_site` where id_vendo = 54560;

O fato é que o pelo menos no Mysql Workbench, não executa. É necessário clicar no botão Executar várias vezes. Mesmo que um pouco contra a lógica é assim que funciona.

Conseguir resolver o problema com o seguinte sql:

Delete From `classificados_vendo_site` where id_vendo in (54567, 54568, 54569, 54570);

 

UPDATE: mais fácil ainda é usando o comando sql Truncate :

TRUNCATE tbl_name

 

é isso!
Abraços

Anúncios
Padrão

3 comentários sobre “Mysql – Deletar vários registros usando um único comando sql

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s