在mysql中,delete,drop和truncate是三种删除数据表的方式,但它们又有所不同;
delete 可以删除单行数据,多行数据以及表中的全部数据;delete并不是真的把数据删除掉了,而是给数据打上删除标记,可以通过rollback回滚操作;
truncate是删除整个表中的全部数据,但是会保留表的结构,具体操作是新建一个表结构,然后把原来表中的表删掉;
drop是把表以及表中的数据、索引、字段全部删除掉;
总结:
drop速度最快,truncate速度次之,delete最慢
delete可以恢复删除的数据,可以使用where表达式;drop和truncate不可以;
网友评论