欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

批量删除数据库表

程序员文章站 2024-03-21 13:32:52
...

mysql中批量删除以某个前缀开头的表,没有现成的sql,只能写存储过程,定义如下:

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('kw_%', 'db_1')$$

 删除存储过程:

drop procedure if exists drop_tables_like$$
delimiter ;

 

 

参考文章:

  http://dev.mysql.com/doc/refman/5.0/en/drop-table.html  

相关标签: MySQL