ORA-06521:执行dbms_stats.gather_table_stats报Error mapping function

 

ORA-06521: PL/SQL: Error mapping function

环境:oracle9.2.0.6

SQL> exec dbms_stats.gather_schema_stats('ys');

begin dbms_stats.gather_schema_stats('ys'); end;

ORA-06521: PL/SQL: 映射函数时出错

ORA-06512: 在"SYS.DBMS_STATS", line 10070

ORA-06512: 在"SYS.DBMS_STATS", line 10564

ORA-06512: 在"SYS.DBMS_STATS", line 10751

ORA-06512: 在"SYS.DBMS_STATS", line 10805

ORA-06512: 在"SYS.DBMS_STATS", line 10782

ORA-06512: 在line 2

SQL> exec dbms_stats.gather_table_stats(user,'tb_family_info');

begin dbms_stats.gather_table_stats(user,'tb_family_info'); end;

ORA-06521: PL/SQL: 映射函数时出错

ORA-06512: 在"SYS.DBMS_STATS", line 10070

ORA-06512: 在"SYS.DBMS_STATS", line 10084

ORA-06512: 在line 2

Just completing the thread with the solution.

Recompile the DBMS_STATS package :

源文档 <http://forums.oracle.com/forums/thread.jspa?threadID=396073>

E:>sqlplus "/as sysdba"

SQL> alter package dbms_stats compile;

SQL> show errors

SQL> @?/rdbms/admin/dbmsstat.sql

SQL> @?/rdbms/admin/prvtstas.plb

SQL> @?/rdbms/admin/prvtstat.plb


try it again

SQL>

SQL>

SQL> exec dbms_stats.gather_table_stats(user,'tb_family_info');

begin dbms_stats.gather_table_stats(user,'tb_family_info'); end;

ORA-04068: 已丢弃程序包 的当前状态

ORA-04061: package "SYS.DBMS_STATS" 的当前状态失效

ORA-04065: 未执行,已更改或删除 package "SYS.DBMS_STATS"

ORA-06508: PL/SQL: 无法在调用之前找到程序单元

ORA-06512: 在line 2

SQL> exec dbms_stats.gather_table_stats(user,'tb_family_info');

PL/SQL procedure successfully completed

SQL> exec dbms_stats.gather_schema_stats('ys');

PL/SQL procedure successfully completed

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/645199/viewspace-686390/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/645199/viewspace-686390/

你可能感兴趣的:(ORA-06521:执行dbms_stats.gather_table_stats报Error mapping function)