EBS 对特定表单独收集统计信息 - fnd_stats.gather_table_stats

简介:

对于某些EBS某些特定的表要做分析, 需撇开相同schema下的超大表,那么必须使用 fnd_stats.gather_table_stats对表进行统计信息收集, 而不能针对 schema ,    这样就需要对每个需要的表进行单独处理 。 

如果是RAC,  想跨节点并行执行, 可加入 execute immediate 'alter session set parallel_force_local=false';  
CREATE OR REPLACE PROCEDURE  apps.gather_pmpc_stats   as  
BEGIN   
  begin  fnd_stats.GATHER_TABLE_STATS('HWCUST','HW_PM_BUSINESS_KEY_T');    exception  when others then null;  end;   
  begin  fnd_stats.GATHER_TABLE_STATS('HWCUST','HW_PM_CALENDERS_T');    exception  when others then null;  end;   
  begin  fnd_stats.GATHER_TABLE_STATS('HWCUST','HW_PM_DELIVERY_UNIT_TI');    exception  when others then null;  end;   
  begin  fnd_stats.GATHER_TABLE_STATS('HWCUST','HW_PM_DELIVERY_UNIT_TMP');    exception  when others then null;  end;   
  begin  fnd_stats.GATHER_TABLE_STATS('HWCUST','HW_PM_DU_ACTIVITIES_TI');    exception  when others then null;  end;   
..... 
end  gather_pmpc_stats  ;
/
begin  
   dbms_scheduler.create_job 
        (
        job_name=> 'GATHER_PMPC_STATS_JOB',  
        job_type=> 'STORED_PROCEDURE',          
        job_action=> 'APPS.GATHER_PMPC_STATS', 
        repeat_interval => 'FREQ=WEEKLY; BYDAY=SUN;BYHOUR=0',  
        enabled=> true,  
        comments => 'Gather statistics for specified tables in PM and PC'
        )   ;  
end ; 
本文转自ITPUB博客tolywang的博客,原文链接:EBS 对特定表单独收集统计信息 - fnd_stats.gather_table_stats,如需转载请自行联系原博主。
相关文章
|
SQL Oracle 关系型数据库
|
存储 Oracle 关系型数据库
|
存储 SQL 关系型数据库
DBMS_STATS.GATHER_TABLE_STATS
由于Oracle的优化器是CBO,所以对象的统计数据对执行计划的生成至关重要! 作用:DBMS_STATS.GATHER_TABLE_STATS统计表,列,索引的统计信息(默认参数下是对表进行直方图信息收集,包含该表的自身-表的行数、数据块数、行长等信息;列的分析--列值的重复数、列上的空值、数据在列上的分布情况;索引的分析-索引页块的数量、索引的深度、索引聚合因子).
2064 0