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

yipeiwu_com6年前Mysql基础
方法一:
复制代码 代码如下:

<?php
mysql_connect('','','');
mysql_select_db('');
$rs=mysql_query('show tables');
while($arr=mysql_fetch_array($rs)){
$TF=strpos($arr[0],'class_');
if($TF===0){
$FT=mysql_query("drop table $arr[0]");
if($FT){
echo "$arr[0] 删除成功!<br>";
}
}
}
?>


方法二:
今天重装个站,搞了一下午,终于找到可以用的批量删除数据库表的方法。。。
这个是以xx_为前缀的示范,大家可以自己更改为想删除的表前缀
复制代码 代码如下:

<?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_fetch_array($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,0,$pos);
}
?>

更改之处在:
1.开头处

<?php
function deldata($dbname,$tableflag){
$db_host = 'localhost';
$db_port = '3306';
$db_user = 'user';
$db_pass = 'password';
改为自己的数据库地址,账号和密码即可
2.结尾处

改为自己的数据库名和想删掉的表前缀
可以复制上面的代码保存为.php,再上传到空间目录打开

相关文章

php基于Fleaphp框架实现cvs数据导入MySQL的方法

本文实例讲述了php基于Fleaphp框架实现cvs数据导入MySQL的方法。分享给大家供大家参考,具体如下: <?php /* * To change this t...

MYSQL环境变量设置方法

mysql环境变量设置(windows环境) 1、对于命令控来说,在cmd命令下行下操作很方便,但有时需要直接在命令行床空执行mysql这样的命令,会出现”mysql不是内部或外部命令“...

深入理解php的MySQL连接类

无意间在电脑里发现还有这么个Mysql的连接类,也不记得哪里收藏的了,贴上来吧。后面几个show_databases和show_tables....等方法都用了一堆echo,好像一直不喜...

PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享

PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享

对于学习php的新手,由于网上的配置方法都是很久之前的,及时性不高,环境配置往往令人很头疼,我初学php配置环境时配置了3个晚上,每次总是会出现这样或那样的问题,如今把最新版的PHP5....

php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例

php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例

本文实例讲述了php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率。分享给大家供大家参考,具体如下: <?php /** * 测试pdo和mysql...