mysql批量删除指定前缀或后缀表

今天突然发现我们数据库中多出很多表,后缀名为“copy”,预计是navicat直接拷贝导致的,然后要对这些有同样后缀名的表进行删除,假设一个一个选择会非常麻烦,表计较多,在网上找了找方法,网上主要通过sql语句来删除。自己在他的基础上写了一个php文件实现了批量删除表。事实上原理是一样的。

1、MYSQL批量删除

[1]获得批量删除的命令:

Select CONCAT( 'drop table ', table_name, ';' ) FROM information_schema.tables Where table_name LIKE '%_copy';

当中须要调整的仅须要调整“%_copy”就可以,依据自己要删除的表特点进行调整

[2]删除表,依据生成的文本。复制之后。运行就可以实现删表。

2、php实现删除。事实上和上面原理一样

<?php
$con = mysql_connect("localhost","root","");
mysql_select_db("ceshibiao", $con);
$query= "Select CONCAT( 'drop table ', table_name, ';' )  as ceshi
FROM information_schema.tables
Where table_name LIKE '%_copy';";
$cursor= mysql_query($query);
while($ROW=mysql_fetch_array($cursor))
{
	mysql_query($ROW["ceshi"])
}
?

>
时间: 2024-10-11 21:40:05

mysql批量删除指定前缀或后缀表的相关文章

MySQL批量删除指定前缀表

Select CONCAT( 'drop table ', table_name, ';' ) FROM information_schema.tables Where table_name LIKE 'dede_%';

mysql批量删除相同前缀的表格

如果你网站后台没法运行mysql,就进phpmyadmin,然后运行一段代码.假如要删除织梦cms的dede_前缀的表,则运行 Select CONCAT( 'drop table ', table_name, ';' )   FROM information_schema.tables   Where table_name LIKE 'dede_%'; 然后,会得一个查询列表,然后点击选择全部,并复制下来这一大串代码.重新点击你安装的程序所对应的数据库,然后点击上面的sql,运行复制下来的一段

Mysql批量删除和修改某个前缀的表

1.批量删除某个前缀的表名,首先选出这些个表. select concat( 'drop table ', table_name, ';' ) from information_schema.tables Where table_name like 'dede_%'; 以上为删除date_为前缀的表,然后复制生成脚本运行即可完成删除. 2.修改某个前缀的表名 select concat( 'alter table ', table_name, 'rename to', table_name, '

批量删除指定数据库中的指定表

-- ---------------------------------------------------------------------------------------------------------- -- -- 1.查询:得到批量删除指定数据库中的指定表: -- 2.执行:将得到的结果复制下来,再重新执行: -- SELECT CONCAT( 'drop table ', table_name, '; ' ) FROM information_schema. TABLES W

redis删除指定前缀的缓存

redis作为缓存服务器为MySQL数据库提供较高的防御性,对于一些数据的查询可以直接从缓存中可以进行查询. 但是,某些情况下,我们需要清除缓存. 以下场景: 公司经常做活动,每个活动都存在大量的数据.在新活动进行测试的时候,也会产生一些缓存,但是删除这些缓存如果不能批量删除就有点烦了. 在写活动的时候,为了保证活动的缓存不冲突,用自己姓名的前缀及活动的英文名作为前缀.缓存在很大程度上能够帮助我们降低服务器的访问压力,但是也要防止缓存失效的情况,缓存并不能作为我们的最终依靠. 首先在缓存中查询,

MySQL批量替换指定字段字符串

MySQL批量替换是我们经常会用到的功能,有时站内包含敏感词,会给我们带来麻烦,而在信息量较大的情况下,一篇篇查找.修改是不现实的. 用MySQL批量替换,甚是轻松.发布在这里供参考,以备不时之需. MySQL批量替换指定字段字符串语句 UPDATE 数据表名 SET 字段名 = replace(字段名, '要替换的字符串', '替换为') WHERE 设定条件; 比如本站今天发现站内关于linux命令的文章 标题不是太好,以前都是以 linux下mkdir命令使用详解---linux创建目录命

mysql进阶 十五 mysql批量删除大量数据

mysql批量删除大量数据 假设有一个表(syslogs)有1000万条记录,需要在业务不停止的情况下删除其中statusid=1的所有记录,差不多有600万条, 直接执行 DELETE FROM syslogs WHERE statusid=1 会发现删除失败,因为lock wait timeout exceed的错误. 因为这条语句所涉及的记录数太多,因此我们通过LIMIT参数分批删除,比如每10000条进行一次删除,那么我们可以利用 MySQL这样的语句来完成: DELETE FROM s

[VBA]批量新建指定名称的工作表

sub 批量新建指定名称的工作表() Dim i As Integer For i = 2 To 10    '根据实际情况修改i大小 Worksheets.Add after:=Worksheets(ThisWorkbook.Worksheets.Count) ActiveSheet.Name = Sheets(1).Cells(1, i) Next End Sub

Python批量删除指定文件夹下的指定类型的文件

Python作为一种脚本语言,其非常适合文件级的各种操作.下面的代码可以批量删除指定文件夹下的全部特定类型(CSV类型)的文件. import sys, csv , operator import os import glob for i in range(0, 20): path = "C:\\Python34\\Folder_" + str(i) for infile in glob.glob( os.path.join(path, '*.csv') ): os.remove(in