mysql-delete 和 truncate的区别

delete from student where id = 3;  -- delete partly
delete from student;  -- delete all
truncate stu;  -- delete all,但表结构都还在

delete 和 truncate的区别:

  • delete 删除表中的数据,表结构还在;删除后的数据可以找回
  • TRUNCATE 删除是把表直接 DROP掉,然后再创建一个同样的新表。删除的数据不能找回。执行速度比 delete 快

delete from emp;
备注:这个命令要是删除上万条记录很慢(因为他记录日志,可以利用日志还原)

truncate table emp;这个命令删除上万条记录特别快,因为他不记录日志

清空emp表

truncate table emp;

posted @ 2018-07-26 14:41  郭东东郭  阅读(859)  评论(0编辑  收藏  举报