How to validate the packages DBMS_METADATA_INT and DBMS_METADATA_UTIL
Goal
The following objects were found invalid while querying dba_objects:
OWNER OBJECT_NAME OBJECT_TYPE STATUS
---------- ------------------------------ ------------------- -------
SYS DBMS_METADATA_INT PACKAGE BODY INVALID
SYS DBMS_METADATA_UTIL PACKAGE BODY INVALID
When trying to compile manually, you get the following errors:
SQL> alter package sys.dbms_metadata_util compile;
SP2-0809: Package altered with compilation warnings
SQL> show errors;
Errors for PACKAGE SYS.DBMS_METADATA_UTIL:
LINE/COL ERROR
-------- -----------------------------------------------------------------
130/9 PLW-06010: keyword "VALUE" used as a defined name
158/31 PLW-06010: keyword "TYPE" used as a defined name
211/17 PLW-06010: keyword "LENGTH" used as a defined name
214/17 PLW-06010: keyword "ROW" used as a defined name
229/17 PLW-06010: keyword "LENGTH" used as a defined name
232/17 PLW-06010: keyword "ROW" used as a defined name
245/17 PLW-06010: keyword "LENGTH" used as a defined name
248/17 PLW-06010: keyword "ROW" used as a defined name
261/17 PLW-06010: keyword "LENGTH" used as a defined name
264/17 PLW-06010: keyword "ROW" used as a defined name
281/17 PLW-06010: keyword "LENGTH" used as a defined name
Solution
Please run the following script which will re-create those packages and type bodies :
$ORACLE_HOME/rdbms/admin/catpprvt.sql
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7199859/viewspace-1063618/ ,如需转载,请注明出处,否则将追究法律责任。