DELETE FROM 表名称 WHERE 列名称 = 值
想要按照你的需求去删除,也就是要拼凑出合适的where条件,
如果有一个字段是line(代表行的值),你就可以:
for(i=5i<=10i++) //写一个循环
delete from T1 where line = i
总的思路就是,想要删除哪里,就构造相应的SQL 语句条件即可!
系统内有一只游戏日志表,每日以百万条数据增长,过段时间需要按照日期清理数据。同事使用delete循环删除过一次,时间久不说,表中的数据是删除了,但是查看服务器发现,*.idb文件大小居高不下,使用optimize table 表名 , 优化表以后,内存大小恢复正常。前前后后花费将近4个小时的时间。效率比较低,偶然想起TRUNCATE TABLE,决定使用以下方案,结果10分钟内,清除3千多万条废弃数据。记录以下,已备下次使用。
按以上步骤,可以解决锁表问题。
一、使用phpmyadmin工具批量删除mysql数据库表使用phpmyadmin数据库管理工具进行删除,这是一个传统的方法,在任何php虚拟主机中,你都可以 *** 作。下面是 *** 作过程介绍:
1、登录phpmyadmin。选择你的mysql数据库名进入——点击结构——选择您要删除的数据表——“选中项”中选择删除,执行删除表 *** 作。如下图:
PHPMYADMIN使用技巧:如何快速批量删除Mysql数据库中的数据表 image00114 150x150
二、使用php脚本完成批量删除
无忧主机(www.51php.com)小编从网上找了一段php代码,也可以帮我们快速实现删除。如果你对phpmyadmin工具“敏感”,可以使用下面的方式来实现快速删除mysql数据库表。 在下面的代码复制到记事本后,配置过程中你要注意几个问题:
1、 正确配置你mysql数据库信息。这个你可以直接咨询你的空间商就可以获得啦。
2、 正确设置要删除的数据库表前缀,这个非常重要,填写错误,将 *** 作错误。请你务必确认你的数据库表前缀哦,数据库表前缀你可以在phpmyadmin中查询到。一般都是xx_开头的。 设置好后,将这段代码另存为.php文件(如51php.php)然后上传到您空间的网站根目录(public_html)。上传完毕,直接用域名/51php.php,就可以删除了。 代码如下:
<?php
mysql_connect('localhost','数据库用户名','数据库密码')
mysql_select_db('数据库名称')
$rs=mysql_query('show tables')
while($arr=mysql_fetch_array($rs))
{
$TF=strpos($arr[0],'51php_')
if($TF===0){
$FT=mysql_query("drop table $arr[0]")
if($FT){
echo "$arr[0] 删除成功!<br>"
}
}
}
?>
以上两种方法都可批量删除数据表,特别提醒一下,数据是无价的, *** 作数据表的时候一定要先做好备份。免得误删除数据是无法恢复的。如果您不会备份,麻烦您参考:
360度全方位讲解无忧网站数据库备份
Mysql数据库管理利器:phpmyadmin详细使用教程
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)