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

前端之家收集整理的这篇文章主要介绍了php中批量删除Mysql中相同前缀的数据表的代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

方法一:
<div class="codetitle"><a style="CURSOR: pointer" data="30535" class="copybut" id="copybut30535" onclick="doCopy('code30535')"> 代码如下:

<div class="codebody" id="code30535">
<?PHP
MysqL_connect('','','');
MysqL_select_db('');
$rs=MysqL_query('show tables');
while($arr=MysqL_fetcharray($rs)){
$TF=strpos($arr[0],'class
');
if($TF===0){
$FT=MysqL_query("drop table $arr[0]");
if($FT){
echo "$arr[0] 删除成功!
";
}
}
}
?>
方法二:
今天重装个站,搞了一下午,终于找到可以用的批量删除数据库表的方法。。。
这个是以xx_为前缀的示范,大家可以自己更改为想删除的表前缀
<div class="codetitle"><a style="CURSOR: pointer" data="22249" class="copybut" id="copybut22249" onclick="doCopy('code22249')"> 代码如下:
<div class="codebody" id="code22249">
<?PHP
function deldata($dbname,$tableflag){
$db_host = 'localhost';
$db_port = '3306';
$db_user = 'user';
$db_pass = 'password';
$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_fetcharray($result)) {
$table=mysubstr($data[Name],"
");
if($table==$tableflag){
//测试之用
/echo $data[Name];
echo "
";
echo $table;
echo "
";
/
MysqL_query("drop table $data[Name]");
}
}
return true;
}
/截取某个特定字符前的所有字符函数
$str 为待截取字符串
$flag 特定字符如“_”
/
function mysubstr($str,$flag){
$pos=strpos($str,$flag);
return substr($str,$pos);
}
?>

更改之处在:
1.开头处 <?PHP
function deldata($dbname,$tableflag){
$db_host = 'localhost';
$db_port = '3306';
$db_user = 'user';
$db_pass = 'password';
改为自己的数据库地址,账号和密码即可
2.结尾处 改为自己的数据库名和想删掉的表前缀
可以复制上面的代码保存为.PHP,再上传到空间目录打开

猜你在找的PHP相关文章