`

批量删除sql里面的有相同前缀的表

阅读更多
有的时候由于本地或者测服务器只有一个数据库,而由于各种原因里面充斥着多个系统的表结构。那时候我删除就要顾及现在远行的系统和以前系统的数据库是否该删除。我们就以删除表前缀的方法来实现。
以下方法已测试!!!!

方法一:(需要服务器支持)直接MYSQL语句。

SELECT CONCAT( 'drop table ', table_name, ';' ) FROM information_schema.tables WHERE table_name LIKE 'test_%';

方法2:用PHP进行删除。
<?php    
/*xuanfunction 删除数据库中有特定前缀的表  
 *$dbname 数据库名  
 *$tableflag 表前缀,这里标志出是哪一个用户,如表s00002_goods前缀为s00002  
 */  
function deldata($dbname,$tableflag){   
$db_host   = '125.65.112.14';   
$db_port    = '3306';   
$db_user    = 'sq_dayintown';   
$db_pass    = 'dayintown';   
$connect =mysql_connect($db_host,$db_user,$db_pass);   
mysql_select_db($dbname);   
$result = mysql_query("show table status from $dbname",$connect);   
$data=mysql_fetch_array($result);   
    while($data=mysql_fetch_array($result)) {   
    $table=mysubstr($data[Name],"_");//截取当前表的下划线以前的字符串得到表前缀   
        if($table==$tableflag){ //判断截取的前缀是否等于自己需要的前缀$tableflag,如果是就删

除该表   
        //测试之用   
        /*echo $data[Name];  
        echo "<br>";  
        echo $table;  
        echo "<br>";*/  
        mysql_query("drop table $data[Name]");   
        }   
    }   
    return true;   
}   
  
/*截取某个特定字符前的所有字符函数  
 *$str 为待截取字符串   
 *$flag 特定字符如“_”  
 */  
function mysubstr($str,$flag){   
$pos=strpos($str,$flag);   
return substr($str,0,$pos);   
}   
//test   
$dbname="sq_dayintown";       //数据库名   
$tableflag="s000002";         //要删除的表的前缀,有这个前缀的表才删除,标志出是哪一个用户 

 
deldata($dbname,$tableflag);
//$test=mysubstr("s000002_account_log","_");   

(--end--)
分享到:
评论

相关推荐

    批量删除具有相同前缀的表的sql语句

    批量删除具有相同前缀的表的sql语句,sqlserver

    php中批量删除Mysql中相同前缀的数据表的代码

    方法一: 复制代码 代码如下: &lt;?... mysql_select_db(”); $rs=mysql_query(‘show tables’); while($arr=mysql_fetch_array($... 方法二: 今天重装个站,搞了一下午,终于找到可以用的批量删除数据库表的方法。。。

    达梦数据库_SQL语言手册

    达梦数据库_SQL语言手册.pdf 数据库快照定义语句 数据库快照删除语句 第章数据查询语句和全文检索语句 单表查询 简单查询 带条件查询 集函数 情况表达式 连接查询 子查询 标量子查询 表子查询 派生表子...

    PHPCMS 企业黄页模块 v9 UTF-8 正式版.zip

    PHPCMS V9采用OOP(面向对象)方式进行基础运行框架搭建。模块化开发方式做为功能开发形式。...安装sql文件前缀错误问题 订单支付页,判断未填写配送地址依然跳转的问题 增加IIS Rewrite规则 修正若干其他问题

    PHPCMS 企业黄页模块 v9 GBK 正式版.zip

    PHPCMS V9采用OOP(面向对象)方式进行基础运行框架搭建。模块化开发方式做为功能开发形式。...安装sql文件前缀错误问题 订单支付页,判断未填写配送地址依然跳转的问题 增加IIS Rewrite规则 修正若干其他问题

    PBHelper(PBCOMMENT)V0.8.3

    PB 9.05.3 新增自动在某个代码段加每行代码的相同的前缀或者相同的后缀 这个在我们日常生活中经常要用到的5.31 新增自动根据字段列表,变量列表,datawindow 赋值语句列表, 自动生成 datawindow 之间复制数据的...

    [PB12.X] PBHelperV1_0_2_20110903 增加对12.5的支持

    5.3 新增自动在某个代码段加每行代码的相同的前缀或者相同的后缀 这个在我们日常生活中经常要用到的 5.31 新增自动根据字段列表,变量列表,datawindow 赋值语句列表, 自动生成 datawindow 之间复制数据的代码 ...

    PBhelper/PBCOMMENT 支持PB11.5,带源码,说明书等,版权归李群巍所有

    5.3 新增自动在某个代码段加每行代码的相同的前缀或者相同的后缀 这个在我们日常生活中经常要用到的 5.31 新增自动根据字段列表,变量列表,datawindow 赋值语句列表, 自动生成 datawindow 之间复制数据的代码 ...

    Access+2000中文版高级编程

    6.5.4 执行批量查询 129 6.5.5 修改现有的查询 130 6.5.6 删除查询 131 6.6 用ADO操作表 131 6.6.1 查看Tables集合 131 6.6.2 使用字段和索引创建新表 133 6.6.3 通过加入索引来修改现有表 136 6.7 小...

    Access 2000中文版高级编程(part1)

    6.5.4 执行批量查询 129 6.5.5 修改现有的查询 130 6.5.6 删除查询 131 6.6 用ADO操作表 131 6.6.1 查看Tables集合 131 6.6.2 使用字段和索引创建新表 133 6.6.3 通过加入索引来修改现有表 136 6.7 小 结 136...

Global site tag (gtag.js) - Google Analytics