一delete产生rollback如果删除大数据量的表速度会很慢同时会占用很多的rollback segments truncate 是DDL操作不产生rollback速度快一些 Truncate table does not generate rollback information and redo records so it is much faster than delete In default it deallocates all space except the space allocated by MINEXTENTS unless you specify REUSE STORAGE clause 二不从tablespace中腾出空间需要 ALTER TABLESPACE AAA COALESCE; 才有空间 三truncate 调整high water mark 而delete不truncate之后TABLE的HWM退回到 INITIAL和NEXT的位置(默认) delete 则不可以 四truncate 只能对TABLE delete 可以是tableviewsynonym 五TRUNCATE TABLE 的对象必须是本模式下的或者有drop any table的权限 而 DELETE 则是对象必须是本模式下的或被授予 DELETE ON SCHEMATABLE 或DELETE ANY TABLE的权限 |