SQL> set autotrace on
ERROR:
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-553: character set name is not recognized
SYS.XMLSEQUENCE
ORA-06552:PL/SQL: Declaration ignored
ORA-06553:PLS-201: identifier 'SYS.XMLSEQUENCEFROMREFCURSOR 2' must be declared
ORA-06552:PL/SQL: Declaration ignored
ORA-06553:PLS-201: identifier 'SYS.XMLSEQUENCEFROMREFCURSOR ' must bedeclared
ORA-06552:PL/SQL: Declaration ignored
ORA-06553:PLS-201: identifier 'SYS.XMLSEQUENCEFROMXMLTYPE' must be declared
ERROR:
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-553: character set name is not recognized
SP2-0611: Error enabling EXPLAIN report
解决方案--
cd $ORACLE_HOME/rdbms/admin
grep -i PRVT_ADVISOR * | grep -icreate
catpdbms.sql:Rem create prvt_advisorpackage
catpprvt.sql:Rem Create prvt_advisorpackage
prvsadv.plb:CREATE OR REPLACE PACKAGEprvt_advisor wrapped
prvtadv.plb:CREATE OR REPLACE PACKAGE BODYprvt_advisor wrapped
SQL> connect /as sysdba
Connected.
SQL> set pages0
SQL> spool x
SQL>@prvsadv.plb
Package created.
No errors.
SQL>@prvtadv.plb
Library created.
Warning: Package Body created with compilationerrors.
Errors for PACKAGE BODYPRVT_ADVISOR:
0/0 PLS-00801: internal error [phdite:nodekind]
2059/7 PL/SQL: SQL Statementignored
2062/34 PL/SQL: ORA-04045:errors during recompilation/revalidation of
2066/5 PL/SQL: Statementignored
Warning: Package Body created with compilationerrors.
上面的提示,说明缺少:
SYS.XMLSEQUENCEFROMREFCURSOR 2
SYS.XMLSEQUENCEFROMREFCURSOR
SYS.XMLSEQUENCEFROMXMLTYPE
cd $ORACLE_HOME/rdbms/admin
grep -i XMLSEQUENCEFROMREFCURSOR *
dbmsxmlt.sql:drop functionXMLSequenceFromRefCursor ;
dbmsxmlt.sql:drop functionXMLSequenceFromRefCursor 2;
dbmsxmlt.sql:create or replace functionXMLSequenceFromRefCursor (data SYS_REFCURSOR,
dbmsxmlt.sql:create or replacefunction XMLSequenceFromRefCursor 2( data SYS_REFCURSOR )<===就是这斯!
dbmsxmlt.sql:grant execute onXMLSequenceFromRefCursor to public;
dbmsxmlt.sql:grant execute onXMLSequenceFromRefCursor 2 to public;
dbmsxmlt.sql: usingsys.XMLSequenceFromRefCursor ,
dbmsxmlt.sql: usingsys.XMLSequenceFromRefCursor 2;
SQL>@dbmsxmlt.sql
OK