总结下个人对DROP、TRUNCATE、DELETE区别的理解(菜鸟级)

1、 DELETE通常是用来删除表中某一条(行)数据信息,如果想删除表中的所有信息当然也可以(不设置WHERE条件即可),可以将该操作保存在事务日志中需要时可以进行回滚操作,TRUNCATE翻译成中文就是“清空”的意思,显而易见,就是一次性将表里面数据全部清除,无法实现回滚操作;
2、对表执行TRUNCATE之 后,该表和索引所占用的空间会恢复到初始大小,然而DELETE操作不会减少表或索引所占用的空间,而DROP操作语句将表所占用的空间全释放掉。
3、TRUNCATE与DELETE均是对数据进行操作,区别是范围有所不同,前者只能针对TABLE,而DELETE可以针对数据中的TABLE、VIEW两种类型,可惜的是他们不能针对结构做出改变,如果想对结构做出改变,那就只有DROP能做了,做一次DROP操作,就相当于将表的结构和数据内容都进行了删除,有的时候真能让你痛不欲生,所以一定要小心谨慎这一步操作。

猜你喜欢

转载自blog.csdn.net/Leagues/article/details/84889490
今日推荐