程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php中批量刪除Mysql中相同前綴的數據表的代碼

php中批量刪除Mysql中相同前綴的數據表的代碼

編輯:PHP綜合
方法一:
復制代碼 代碼如下:
<?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,再上傳到空間目錄打開
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved