Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > MySQL中Delete和Truncate区别

MySQL中Delete和Truncate区别及使用说明

作者:Decade102

article summary:MySQL中,DELETE和TRUNCATE都是清空表数据的语句,但它们在支持条件删除、自增列重置、执行速度、操作类型、空间释放和回滚支持等方面存在显著差异

Delete和Truncate区别

mysql清空表语句

truncate table [表名] ;
delete from [表名] where …;

相同点

不同点

总结

由于delete 是数据操作语言(DML - Data Manipulation Language),操作时原数据会被放到 rollback segment中,可以被回滚;而TRUNCATE是数据定义语言(DDL - Data Definition Language),操作时不会进行存储,不能进行回滚。truncate语句实际是删除原来的表然后重新建立一个新表。

注:drop table tableName 会连整个表结构一起删除。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文