mysql删除相同前缀的数据表_MYSQL如何批量删除相同前缀表?

MYSQL批量删除相同前缀的表 MYSQL批量删除相同前缀的表 数据库账号数据库密码数据库删除前缀 (例如:apoyl_) 帮助 /* author:凹凸曼(L
MYSQL批量删除相同前缀的表

MYSQL批量删除相同前缀的表

数据库账号
数据库密码
数据库
删除前缀

(例如:apoyl_)

帮助

/* author:凹凸曼(LYC)

/* email: jar-c@163.com

/* url : http://www.apoyl.com/

*/

if($_POST['apoyl']){

//参数获取及过滤

$params=array();

foreach($_POST as $k=>$v){

if(in_array($k,array('ip','user','pwd','dbname','pre'))){

$params[$k]=addslashes(trim($v));

if(empty($params[$k])){

echo '参数为空!';

exit;

}

}

}

//连接数据库

$conn=@mysql_connect($params['ip'],$params['user'],$params['pwd']) or die('数据连接失败');

mysql_select_db($params['dbname'],$conn);

//获取该数据所有表

$rs=mysql_query('show tables',$conn);

while($arr=mysql_fetch_array($rs)){

//判断是否为该前缀的表

$flag=strpos($arr[0],$params['pre']);

if($flag===0){

$re=mysql_query('drop table '.$arr[0],$conn);

if($re){

echo ''.$arr[0].' 删除成功!
';

}else{

echo ''.$arr[0].' 删除失败!
';

}

}

}

}

?>

结:第一种方式与第二区别 更麻烦需要写出所有的表名,而第二种方式,更为简单,