mysql批量删除相同前缀的表和修改表名
简介
mysql批量删除相同前缀的表和修改表名Select CONCAT( 'ALTER TABLE ', table_name, 'RENAME TO ', table_name,';' )
由于博客升级,要把原来的系统和数据全都替换掉,安装完之后发现原来的数据表全都还在,根据表名前缀的区别,可以批量的删掉原来的数据表,操作如下:
执行sql语句:
Select CONCAT( 'drop table ', table_name, ';' )
FROM information_schema.tables
Where table_name LIKE 'pre_%';
解释:like`pre_%`,其中pre_为你需要删除的表前缀,根据你自己的需求修改,
执行查询,会自动把匹配的表生成出 drop table table_name这样的SQL语句,
运行结果如下:
批量复制一下到记事本或者et之类的编辑工具中,确定你的sql语句是否正确.这么一来也可以安全的审核一下语句,避免误操作.
最好用记事本打开,这样可以去掉样式,检查之后复制到sqlyog里面运行:
ok,成功删除相同表前缀的文章了!
拓展:
批量修改表前缀:
Select CONCAT( 'ALTER TABLE ', table_name, 'RENAME TO ', table_name,';' )
FROM information_schema.tables
Where table_name LIKE 'uc_%';\
批量复制一下到记事本或者 et之类的编辑工具中,然后批量替换 RENAME TO uc 成 RENAME TO 你想要的表前缀完成后 再执行