当前位置:Oracle研究中心 > 故障案例 >
时间:2016-07-22 22:23 来源:Oracle研究中心 作者:惜分飞 点击: 次
SQL> select * from v$version; BANNER ---------------------------------------------------------------- Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production PL/SQL Release 9.2.0.4.0 - Production CORE 9.2.0.3.0 Production TNS for Linux: Version 9.2.0.4.0 - Production NLSRTL Version 9.2.0.4.0 - Production SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') "www.oracleplus.com" from dual; www.oracleplus.com ------------------- 2012-05-26 23:10:22 SQL> select dbms_metadata.get_ddl('TABLE','XFF_IOT','CHF1') from dual; ERROR: ORA-06502: PL/SQL: numeric or value error ORA-31605: the following was returned from LpxXSLResetAllVars in routine kuxslResetParams: LPX-1: NULL pointer ORA-06512: at "SYS.UTL_XML", line 0 ORA-06512: at "SYS.DBMS_METADATA_INT", line 3320 ORA-06512: at "SYS.DBMS_METADATA_INT", line 4148 ORA-06512: at "SYS.DBMS_METADATA", line 458 ORA-06512: at "SYS.DBMS_METADATA", line 615 ORA-06512: at "SYS.DBMS_METADATA", line 1221 ORA-06512: at line 1 no rows selected
错误原因
dbms_metadata.get_ddl需要调用Oracle dictionary table “sys.metastylesheet.”中的XSL stylesheets,但是由于某种原因,使得调用失败,出现上述错误.因为该错误可能有:
1.XSL stylesheets没有安装
2.使用alter database 修改数据库字符集(本库是因为昨天修改字符集导致)
1.在10g及其以上版本中(不带参数)
SQL> exec dbms_metadata_util.load_stylesheets; PL/SQL procedure successfully completed.
2.在9i版本中(带dir参数)
SQL> exec dbms_metadata_util.load_stylesheets('/u01/oracle/9.2.0/db_1/rdbms/xml/xsl'); PL/SQL procedure successfully completed. SQL> select dbms_metadata.get_ddl('TABLE','XFF_IOT','CHF1') from dual; DBMS_METADATA.GET_DDL('TABLE','XFF_IOT','CHF1') -------------------------------------------------------------------------------- CREATE TABLE "CHF1"."XFF_IOT" ( "ID" NUMBER, "NAME" VARCHAR2(30), CONSTRAINT "CHF_IOT_ID#_PK" PRIMARY KEY ("ID") ENABLE ) ORGANIZATION INDEX NOCOMPRESS PCTFREE 10 INITRANS 2 MAXTRANS 255 LOGGING STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "SYSTEM" PCTTHRESHOLD 50 DBMS_METADATA.GET_DDL('TABLE','XFF_IOT','CHF1') --------------------------------------------------------------------------------
--------------------------------------ORACLE-DBA----------------------------------------
最权威、专业的Oracle案例资源汇总之【案例】Oracle报错ORA-31605 使用dbms_metadata.get_ddl报错
本文由大师惜分飞原创分享,网址:http://www.oracleplus.net/arch/832.html
Powered by Oracle研究中心 OraclePlus Inc.
BY DedeCMS 京ICP备14022373号-5
声明:Oracle研究中心部分文章源自互联网,转载均按原文作者要求转载,如有疑问联系QQ:1026002015,协商未果24小时删除。