为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:V8
【操作系统】:
【CPU】:
【问题描述】*:使用DBMS_STATS.GATHER_TABLE_STATS执行单表信息收集报错
begin
DBMS_STATS.GATHER_TABLE_STATS(ownname => 'XCCS_HG',
tabname =>'T_D_OD_QSMXNEW',
estimate_percent =>10,
block_sample =>true,
method_opt=>'FOR ALL INDEXED COLUMNS SIZE AUTO',
degree => 8,
cascade =>true,
no_invalidate => false,
force =>true);
end;
使用包内的过程和函数之前,如果还未创建过系统包,需要先创建,DBMS_STATS创建语句为
SP_CREATE_SYSTEM_PACKAGES (1,'DBMS_STATS');
看下是否配置了关键字,去除关键字重启服务后试试
select * from v$dm_ini where para_name ='EXCLUDE_RESERVED_WORDS';
是不是最近做过数据库升级。
先执行一下
SP_CREATE_SYSTEM_PACKAGES(0);
再执行一下
SP_CREATE_SYSTEM_PACKAGES(1);
再去检验下dbms_stats是否可以了
DBMS_STATS.GATHER_TABLE_STATS('模式名', '表名',null,100,TRUE,'FOR ALL COLUMNS SIZE AUTO');
这样子呢,建议手敲一遍哟