ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORA-06521:执行dbms_stats.gather_table_stats报Error mapping function

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

原创 Linux操作系统 作者:sDon 时间:2011-01-27 15:56:22 0 删除 编辑

 

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/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-11-20

  • 博文量
    39
  • 访问量
    245477