delete和truncate区别
2018-06-17 23:32:41来源:未知 阅读 ()
相同之处:truncate在功能上与不带WHERE子句的delete 语句相同:二者均删除表中的全部行。小心使用truncate,删除后就没有了
1、delete : 删除"表格记录"会把操作记录在日志中,可以通过事务回滚来恢复删除的数据。
truncate :删除"表格记录"不可恢复 。
2、delete :每次删除一行,并在事务日志中为所删除的每行记录一项。
truncate :过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
所以truncate 比delete速度快
3、 delete:删除内容,不删除定义,释放空间。
truncate :删除内容,不删除定义,不释放空间。
4、delete:语句不影响表所占用的extent, 高水线(high w2atermark)保持原位置不动
truncate: 语句缺省情况下将空间释放到 minextents个 extent,除非使用reuse storage; truncate会将高水线复位(回到最开始).
想删除部分数据行用delete,注意带上where子句. 回滚段要足够大.
想删除表,当然用drop
想保留表而将所有数据删除. 如果和事务无关,用truncate即可. 如果和事务有关,或者想触发trigger,还是用delete.
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 微服务架构优势在哪,与传统服务又有什么区别呢? 2019-08-23
- HTTP中GET与POST的区别,99 %的人都理解错了 2019-08-09
- sql 中 并集union和union all的使用区别 2019-07-24
- 关于sql 中delete, truncate,drop的理解与总结 2019-07-24
- 解析PHP跳出循环的方法以及continue、break、exit的区别介绍 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash