mysql中delete和truncate有哪些区别

2021-01-1708:50:39数据库教程Comments1,595 views字数 298阅读模式

delete和truncate区别如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/sjk/20863.html

一、灵活性:delete可以条件删除数据,而truncate只能删除表的所有数据;文章源自菜鸟学院-https://www.cainiaoxueyuan.com/sjk/20863.html

delete from table_test where ...文章源自菜鸟学院-https://www.cainiaoxueyuan.com/sjk/20863.html

truncate table table_test文章源自菜鸟学院-https://www.cainiaoxueyuan.com/sjk/20863.html

二、效率:delete效率低于truncate,delete是一行一行地删除,truncate会重建表结构,文章源自菜鸟学院-https://www.cainiaoxueyuan.com/sjk/20863.html

三、事务:truncate是DDL语句,需要drop权限,因此会隐式提交,不能够rollback;delete是DML语句,可以使用rollback回滚。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/sjk/20863.html

四、触发器:truncate 不能触发任何Delete触发器;而delete可以触发delete触发器。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/sjk/20863.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/sjk/20863.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定