mysql中delete和truncate区别
Posted igoodful
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql中delete和truncate区别相关的知识,希望对你有一定的参考价值。
delete和truncate区别如下:
一、灵活性:delete可以条件删除数据,而truncate只能删除表的所有数据;
delete from table_test where ...
truncate table table_test
二、效率:delete效率低于truncate,delete是一行一行地删除,truncate会重建表结构,
三、事务:truncate是DDL语句,需要drop权限,因此会隐式提交,不能够rollback;delete是DML语句,可以使用rollback回滚。
四、触发器:truncate 不能触发任何Delete触发器;而delete可以触发delete触发器。
以上是关于mysql中delete和truncate区别的主要内容,如果未能解决你的问题,请参考以下文章
MySQL DELETE语句和TRUNCATE TABLE语句的区别
详解MySQL中DROP,TRUNCATE 和DELETE的区别