Deletar várias tabelas do Bando ao mesmo tempo [RESOLVIDO]

1. Deletar várias tabelas do Bando ao mesmo tempo [RESOLVIDO]

Fagner Fjas
fagnerfjas

(usa Ubuntu)

Enviado em 11/02/2012 - 20:32h

Opa galera!
Meu problema é relativamente simples.
tenho um baco de dados MySql e lá tenho muitas tabelas divididas em grupos que pertencem o mesmo prefixo, ex:

tabelas ------
loja_cliente
loja_produto
loja_venda
...
stoq_usuario
stoq_entrada
stoq_corredores

Quero deletar todas as tabelas que comecem como prefixo 'loja_'.
Como é que eu faço isso???

há alguma forma parecida com o shell do linus tipo ( fulano@maquina$ rm *.txt )???


  


2. MELHOR RESPOSTA

Perfil removido
removido

(usa Nenhuma)

Enviado em 11/02/2012 - 22:18h

Pelo procurar do phpmyadmin tu faz isso.

3. Re: Deletar várias tabelas do Bando ao mesmo tempo [RESOLVIDO]

André Carezia
carezia

(usa Debian)

Enviado em 12/02/2012 - 08:09h

Use algo assim:

delimiter $$
create procedure drop_tables_like(pattern varchar(255), db varchar(255))
begin
select @str_sql:=concat('drop table ', group_concat(table_name))
from information_schema.tables
where table_schema=db and table_name like pattern;

prepare stmt from @str_sql;
execute stmt;
drop prepare stmt;
end$$

call drop_tables_like('loja_%', 'nome-do-banco-de-dados')$$

drop procedure if exists drop_tables_like$$
delimiter ;

Esse procedimento foi adaptado de um comentário de usuário da documentação do MySQL:
http://dev.mysql.com/doc/refman/5.0/en/drop-table.html


4. Re: Deletar várias tabelas do Bando ao mesmo tempo [RESOLVIDO]

Fagner Fjas
fagnerfjas

(usa Ubuntu)

Enviado em 12/02/2012 - 14:16h

Opa galera, usei o PhpMyadmin por ser uma técnica mais simples, mas o Carezia mencionou uma coisa muito importante, tenho que estudar mais sobre procedure.

Obrigado gente!!!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts