如下所示,在使用dbms_metadata.get_ddl报XSL stylesheets not loaded correctly错误
SQL> select dbms_metadata.get_ddl('TABLE','MY_TBL_JZJL','QYWS_YYGJ') from dual;
ERROR:
ORA-39212: installation error: XSL stylesheets not loaded correctly
ORA-06512: at "SYS.DBMS_METADATA", line 6069
ORA-06512: at "SYS.DBMS_METADATA", line 8666
ORA-06512: at line 1
出现这个问题的原因是数据泵元数据API使用的XSL样式表未正确加载到Oracle字典表“sys.metastylesheet”中,通过以下方式重新加载(sysdba权限用户)即可。
SQL> exec dbms_metadata_util.load_stylesheets;
PL/SQL procedure successfully completed.
在执行以上查询元数据的sql:
SQL> select dbms_metadata.get_ddl('TABLE','MY_TBL_JZJL','QYWS_YYGJ') from dual;
DBMS_METADATA.GET_DDL('TABLE','MY_TBL_JZJL','QYWS_YYGJ')
--------------------------------------------------------------------------------
CREATE TABLE "QYWS_YYGJ"."MY_TBL_JZJL"
( "CODE" VARCHAR2(18) NOT NULL ENA
可以正确执行。