Oracle ORA-31011:函数条件下的XML分析失败
在客户端的数据库(我没有物理访问权限)上,我们在加入函数时会得到一些奇怪的结果Oracle ORA-31011:函数条件下的XML分析失败,oracle,plsql,Oracle,Plsql,在客户端的数据库(我没有物理访问权限)上,我们在加入函数时会得到一些奇怪的结果 ORA-00604: error occurred at recursive SQL level 1 ORA-31011: XML parsing failed ORA-19213: error occurred in XML processing at lines 1 LPX-00007: unexpected end-of-file encountered 00604. 00000 - "error
ORA-00604: error occurred at recursive SQL level 1
ORA-31011: XML parsing failed
ORA-19213: error occurred in XML processing at lines 1
LPX-00007: unexpected end-of-file encountered
00604. 00000 - "error occurred at recursive SQL level %s"
*Cause: An error occurred while processing a recursive SQL statement
(a statement applying to internal dictionary tables).
*Action: If the situation described in the next error on the stack
我能够引导他们在同一数据库中的全新模式上复制问题
create or replace function GEN_FILENAME(p_file_name varchar2) return varchar2
is
l_filename varchar2(100);
begin
l_filename := 'Test' || '/' || 'Test' || '.' || initcap(p_file_name) || '.txt';
return l_filename;
end GEN_FILENAME;
/
如果在联接上使用equals,函数将生成以下错误,但在为函数使用sub-select时,该错误是正常的
ORA-00604: error occurred at recursive SQL level 1
ORA-31011: XML parsing failed
ORA-19213: error occurred in XML processing at lines 1
LPX-00007: unexpected end-of-file encountered
00604. 00000 - "error occurred at recursive SQL level %s"
*Cause: An error occurred while processing a recursive SQL statement
(a statement applying to internal dictionary tables).
*Action: If the situation described in the next error on the stack
我还看到了其他一些奇怪的问题。我已经要求他们收集模式中表的统计数据
begin
for i in (select TABLE_NAME from USER_TABLES) loop
--Gather Table Statistics
sys.dbms_stats.gather_table_stats ( ownname => 'TEST', tabname => i.TABLE_NAME, cascade => true);
end loop;
end;
/
这导致了以下错误:
ORA-20000: Unable to analyze TABLE "TEST"."LOGMNR_SESSION_EVOLVE$", insufficient privileges or does not exist
ORA-06512: at "SYS.DBMS_STATS", line 40751
ORA-06512: at "SYS.DBMS_STATS", line 40024
ORA-06512: at "SYS.DBMS_STATS", line 40183
ORA-06512: at "SYS.DBMS_STATS", line 40732
ORA-06512: at line 5
ORA-06512: at line 5
我认为这一切都是相关的,但我以前从未见过这种类型的问题
有什么想法吗?;虽然您的示例没有任何XML,但不清楚您是否(或如何)看到了显示的确切错误。您认为哪个数据库版本和修补程序级别存在问题?您是否有两个名为
GEN_FILENAME
的函数,可能规格不同;或者失败的调用是在一个有自己的优先版本的包中?我使用的是19c,没有重复的函数。XML是一个奇怪的部分,我已经在多个其他安装上测试了相同的代码。我确信问题在于他们的数据库。