php怎么批量删除数据库下指定前缀的表?

如何用php批量删除数据库下所有前缀为prefix_的表。

例子,统一删除前缀为“prefix_”的表。

<?php

//设置数据库连接信息。数据库服务器地址,数据库用户名,数据密码

mysql_connect(‘数据库主机‘,‘数据库用户名‘,‘数据库密码‘);

//设置查询的数据库名称

mysql_select_db(‘数据库名‘);

$rs=mysql_query(‘show tables‘);

while($arr=mysql_fetch_array($rs))

{ www.jbxue.com

//设置要批量删除的数据库表前缀,如:prefix_

$TF=strpos($arr[0],‘prefix_‘);

if($TF===0){

$FT=mysql_query("drop table $arr[0]");

if($FT){

echo "$arr[0] 删除成功!<br>";

}

}

}

?>

操作实例:

新建一个php文件,保存为deletedata.php。

比如,要删除www.jbxue.com或者http://www.jbxue.com/的后台数据,操作两个步骤就ok:

1. 首先将这个保存好的deletedata.php文件上传至你的网站根目录;

2. 直接在地址栏输入:www.jbxue.com/deletedata.php或者http://www.jbxue.com/deletedata.php执行这个删除脚本即中。

该脚本会在浏览器中显示出所有表删除成功的信息。

时间: 2024-08-07 22:55:12

php怎么批量删除数据库下指定前缀的表?的相关文章

php批量删除数据库下指定前缀的表

如何用php批量删除数据库下所有前缀为prefix_的表. 例子,统一删除前缀为"prefix_"的表. <?php //设置数据库连接信息.数据库服务器地址,数据库用户名,数据密码 mysql_connect('数据库主机','数据库用户名','数据库密码'); //设置查询的数据库名称 mysql_select_db('数据库名'); $rs=mysql_query('show tables'); while($arr=mysql_fetch_array($rs)) { ww

Mysql批量删除和修改某个前缀的表

1.批量删除某个前缀的表名,首先选出这些个表. select concat( 'drop table ', table_name, ';' ) from information_schema.tables Where table_name like 'dede_%'; 以上为删除date_为前缀的表,然后复制生成脚本运行即可完成删除. 2.修改某个前缀的表名 select concat( 'alter table ', table_name, 'rename to', table_name, '

批量删除数据库的SQL语句

由于项目需要,每次运行case的时候都需要创建数据库.虽然每次执行结束都会删除,但是不保证每次都能删除成功(这里有许多原因,我就不列举了).所以我写了个脚本去批量删除数据库.首先为确保我们的数据库是有用的,不被错删除的.所以就必须先备份在删除. 备份数据库: DECLARE @name VARCHAR(50) -- database name DECLARE @path VARCHAR(256) -- path for backup files DECLARE @fileName VARCHAR

批量删除mysql一个库所有数据表方法

批量删除mysql一个库所有数据表方法 删除表的命令 drop table 表名; 如果有100张表,手工执行100次,想想就崩溃. 下面提供一个使用information_schema库的方案来批量删除数据表:SELECT CONCAT('drop table ',table_name,';') FROM information_schema.`TABLES` WHERE table_schema='数据库名'; 如通过这条命令来得到drop table 表名;这样的语句,然后批量执行.mys

批量删除和修改特定前缀的mysql表

批量删除特定前缀的表 第一步:拼装sql语句 Select CONCAT( 'drop table ', table_name, ';' ) FROM information_schema.tables Where table_name LIKE 'CA_%'; 第二步:把红框中内容选中复制粘贴执行即可 小技巧:为了不选中竖杆(|),Alt+鼠标左键是列选中,这样就可以选中红框中的内容 批量修改表前缀 第一步:拼装sql语句 select concat('alter table ',table_

批量删除数据库表

由于工作的原因,有时候会对数据库表进行批量的处理,这时候我们可以用游标对数据库进行批量删除表操作 DECLARE @Table NVARCHAR(30) DECLARE tmpCur CURSOR FOR SELECT name FROM sys.objects WHERE TYPE='U' AND name LIKE N'HSUPA%' OPEN tmpCur FETCH NEXT FROM tmpCur INTO @Table WHILE @@FETCH_STATUS = 0 BEGIN D

生成环境批量删除 数据库数据

10.0.0.8 一.备份mysql库 innobackupex --defaults-file=/etc/my.cnf /opt/backup 二.运行auto_generate_delete_ac_banana_log_sql.sh生成批量删除sql语句 sh auto_generate_delete_ac_banana_log_sql.sh > delete_ac_banana_log.txt 三.运行批量删除sql文本 1.登录mysql 2.source delete_ac_banan

2019/1/15 批量删除数据库相关数据

目的:删除数据库各个系统his库里的测试soe与故障数据:一.sql执行错误:执行sql:SELECT FROM SOE WHERE sDevCode = 012400000001报错:[SQL Server]将 varchar 转换为数据类型 numeric 时出现算术溢出错误.原因:查看表设计,sDevCode列的类型为varchar(字符串),修改:SELECT FROM SOE WHERE sDevCode = '012400000001' .二.脚本: -- coding:UTF-8

SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束

创建数据库: 1 CREATE DATABASE Test --要创建的数据库名称 2 ON PRIMARY 3 ( 4 --数据库文件的具体描述 5 NAME='Test_data', --主数据文件的逻辑名称 6 FILENAME='E:\project\Test_data.mdf', --主数据文件的物理名称 7 SIZE=5MB, --主数据文件的初始大小 8 MAXSIZE=100MB, --主数据文件的增长的最大值 9 FILEGROWTH=15% --主数据文件的增长率 10 )