MySQL中如何清空表数据
MySQL清空表数据
清空表数据一共有三种方式
1 、truncate (速度很快) 自增字段清空从1开始 全表清空首选
2、drop 直接删表…啥都没了啥都没了 … … … …
3、delete 速度慢的一批 自增字段不清空
MySQL清空表数据命令:truncate
说明:删除内容、释放空间但不删除定义,也就是数据表的结构还在。与drop不同的是,它只是清空表数据而已,它比较温柔。
truncate table 表名
注意:
不能与where一起使用。
- truncate删除数据后是不可以rollback的。
- truncate删除数据后会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。
- truncate删除数据后不写服务器log,整体删除速度快。
- truncate删除数据后不激活trigger(触发器)。
MySQL删除表命令:drop
说明:删除内容和定义,释放空间。简单来说就是把整个表去掉.以后要新增数据是不可能的,除非新增一个表。
drop table 表名;
或者是 加上条件
drop table if exists 表名
注意:
drop不光清除表数据还要删除表结构。
MySQL清空数据表内容的语法:delete
说明:删除内容不删除定义,不释放空间。其中,delete table tb 虽然也是删除整个表的数据,但是过程是痛苦的(系统一行一行地删,效率较truncate低)。
delete from 表名 where id='1';
或者是 不带有条件
delete from 表名;
注意:
- delete含义:你要删除哪张表的数据 ?你要删掉哪些行 ?
- delete可以删除一行,也可以删除多行;
- 如果不加where条件,则是删除表所有的数据,这是很危险的!不建议这样做!
Mysql清空表数据,id从1开始
TRUNCATE TABLE table_name
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
MySQL5.7的sql脚本导入到MySQL5.5出错3种解决方案
笔者需要将使用MySQL5.7数据库的网站挪入winows服务器,目标服务器使用的是MySQL5.5,因为兼顾到以前的网站,MySQL不能升级。遇到MySQL5.7的sql脚本导入到MySQL5.5出错,总结了3种解决方案,总有一个方案适合你。2023-06-06MySql 8.0.11-Winxp64(免安装版)配置教程
这篇文章主要介绍了MySql 8.0.11-Winxp64(免安装版)配置教程,非常不错,具有参考借鉴价值,需要的朋友参考下吧2018-05-05MySQL报错:sql_mode=only_full_group_by的4种轻松解决方法(含举例)
今天学mysql函数的时候在自己服务器上的MySQL碰见了个奇怪的问题,下面这篇文章主要给大家介绍了关于MySQL报错:sql_mode=only_full_group_by的4种轻松解决方法,需要的朋友可以参考下2023-01-01
最新评论