【DB笔试面试651】在Oracle中,对表执行TRUNCATE操作会将表的统计信息也清除掉吗?_Oracle

♣          题目         部分

在Oracle中,对表执行TRUNCATE操作会将表的统计信息也清除掉吗?


     
♣          答案部分          


不会。对表执行TRUNCATE操作,表及其索引的统计信息都不会被清除掉,除非使用系统包DBMS_STATS中的相关DELETE存储过程才能将表或索引的统计信息清除掉。

删除统计信息:

1DBMS_STATS.DELETE_TABLE_STATS(USER,'TB_NAME');--表
2DBMS_STATS.DELETE_INDEX_STATS(USER,'INDX_NAME');--索引