欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

oracle 执行truncate操作后,block块中数据有没有被清空,该怎么处理

更新时间: 2014-01-05 02:12:26 责任编辑: Author_N1

 

oracle 执行truncate操作后,block块中数据有没有被清空
oracle执行truncate语句后,高水位线与索引重置,不触发任务delete触发器,想问一下:原来存储该表数据的block块中数据有没有被清除?
--参考方法--
truncate 后不需要处理hwm,块清空了
--参考方法--
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

若使用了DROP STORAGE(缺省), 除了已指定的MINEXTENTS,其它EXTENT 重新分配NEXT_EXTENT 设置MINEXTENTS 之后的EXTENT,High-Water Mark 复位指向表中的第一个BLOCK。 使用REUSE STORAGE 保留表的使用空间 ,保留原来的扩展,但不合并; HWM(高水位)的位置RESET 到第一个BLOCK。 当使DROP STORAGE时将缩短表和表索引,将表收缩到最小范围,并重新设置NEXT 参数。 REUSESTORAGE 不会缩短表或者调整NEXT 参数。另外一个区别是,用reuse storage可以减少对表及数据字典的锁定时间,特别是大表常这样做,余下和DEALLOCATEUNUSED 来逐步回收空间。Truncate 语句缺省情况(缺省情况为drop storage)下空间释放到 minextents个 extent, 除非使用reuse storage (如果使用reuse storage,那么这些删除之后留下的空间会被保持);Truncate 会将高水线复位(回到最开始)。 
--参考方法--
http://hi.baidu.com/bjn_wuming/item/6e2e59e1422b01b42e140b63 具体详见这个网址,有你想要知道的
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:12:26
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6940/
本文WWW.DOC100.NET DOC100.NET版权所有。