oracle存储过程统计信息,oracle用dbms_stats包收集统计信息

dbms_stats包里最常用的就是如下4个存储过程:

gather_table_stats:用于收集目标表、目标表的列和目标表上的索引的统计信息。

gather_index_stats:用于收集指定索引的统计信息。

gather_schema_stats:用于收集指定schema下所有对象的统计信息。

gather_database_stats:用于收集全库所有对象的统计信息。

1、对表收集统计信息,并且以估算模式,采样的比例为15%

execdbms_stats.gather_table_stats(ownname=>'SCHEMA',tabname=>'TAB_NAME',estimate_percent=>15,method_opt=

2、以计算模式收集索引的统计信息

exec dbms_stats.gather_index_stats(ownname=>'SCHEMA',indname=>'IDX_NAME',estimate_percent=>100);

3、删除表、表的所有列、表的所有索引的统计信息

exec dbms_stats.delete_table_stats(ownname=>'SCHEMA',tabname=>'TAB_NAME');

4、一次性以计算模式收集表、表的所有列和该表所有索引的统计信息

execdbms_stats.gather_table_stats(ownname=>'SCHEMA',tabname=>'TAB_NAME',estimate_percent=>100,cascade=>true);

13915