【问题标题】:Below code work in oracle 11g but oracle 12c release 1 give ora-00600 error下面的代码在 oracle 11g 中工作,但 oracle 12c release 1 给出 ora-00600 错误
【发布时间】:2020-07-10 11:56:39
【问题描述】:

以下代码在 oracle 11g 中工作,但 oracle 12c 版本 1 给出 ora-00600 错误。我怎样才能让它独立于数据库版本?

DECLARE
  lxml xmltype;
    l_tag varchar2(30);
begin
  lxml :=
  xmltype('<responseObject>
             <error>That is not a valid request</error>
             <errorCode>A11</errorCode>
             <value>A</value>
           </responseObject>
           ');
 l_tag := 'responseObject/*';
  FOR test IN (
    select tag,
           VALUE
    FROM   xmltable(l_tag
             passing lxml
             columns
               tag VARCHAR2(128) path 'name()',
               VALUE VARCHAR2(128) path '.'
           ) t
  )
  LOOP
    dbms_output.put_line(test.tag || ' - ' || test.value);
  END LOOP;
end;
/

【问题讨论】:

  • ORA-00600 通常是坏消息,读作“联系 Oracle 支持”,因为这意味着存在内部错误。 但是,我在 12c (12.2.0.1.0) 上尝试了您的代码,它工作正常。您使用哪个版本?您查看了 My Oracle Support 吗?
  • ORA-00600 是 Oracle 针对未处理的副作用(即代码中的错误)的标准错误消息。标准建议是联系 Oracle 支持。如果您没有支持合同,您可能会不走运。此类错误通常特定于确切版本的数据库和/或操作系统。发布消息和您的环境的完整详细信息,可能有人会帮助您。
  • 下面 SELECT 名称的 o/p 是什么,值 FROM v$parameter WHERE name = 'compatible';

标签: oracle plsql oracle12c


【解决方案1】:

由于错误 25437089 和 25967544,此问题已在补丁 26281022 中得到修复。此链接中提供了更多详细信息

Doc ID 2279533.1

【讨论】:

  • 如果您的问题得到解决,请接受答案
猜你喜欢
  • 2016-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-12
  • 1970-01-01
  • 2020-11-21
  • 2021-05-10
  • 1970-01-01
相关资源
最近更新 更多