登录
首页 >  数据库 >  MySQL

Mysql清空表(truncate)与删除表中数据(delete)的区别

来源:SegmentFault

时间:2023-02-16 15:31:56 385浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是数据库学习者,那么本文《Mysql清空表(truncate)与删除表中数据(delete)的区别》就很适合你!本篇内容主要包括Mysql清空表(truncate)与删除表中数据(delete)的区别,希望对大家的知识积累有所帮助,助力实战开发!

1.  truncate table 表名;
2.  delete \* from 表名;`

其中truncate操作中的table可以省略,delete操作中的*可以省略。这两者都是将表中数据清空,不过也是有区别的,如下:

truncate是整体删除(速度较快), delete是逐条删除(速度较慢)。 truncate不写服务器log,delete写服务器log,也就是truncate效率比delete高的原因。

truncate不激活trigger(触发器),但是会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。而delete删除以后,Identity依旧是接着被删除的最近的那一条记录ID加1后进行记录。

如果只需删除表中的部分记录,只能使用DELETE语句配合where条件。 DELETE FROM 表名 WHERE……

文中关于mysql的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《Mysql清空表(truncate)与删除表中数据(delete)的区别》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表