Oracle SQL过程中的标识符无效
以下过程中出现错误(8,3):PL/SQL:SQL语句被忽略,错误(8,10):PL/SQL:ORA-00904:“XMLELEMENT”:标识符无效:Oracle SQL过程中的标识符无效,oracle,procedure,Oracle,Procedure,以下过程中出现错误(8,3):PL/SQL:SQL语句被忽略,错误(8,10):PL/SQL:ORA-00904:“XMLELEMENT”:标识符无效: CREATE OR REPLACE PROCEDURE GETXMLTREE ( p_ESTABELECIMENTOID IN NUMBER , MYXML OUT VARCHAR2 ) AS BEGIN SELECT XMLELEMENT --line 8 i
CREATE OR REPLACE PROCEDURE GETXMLTREE
(
p_ESTABELECIMENTOID IN NUMBER
, MYXML OUT VARCHAR2
)
AS
BEGIN
SELECT XMLELEMENT --line 8
into MYXML
("root",
(select dbms_xmlgen.getxmltype
(dbms_xmlgen.newcontextfromhierarchy
('SELECT level,
XMLElement("item",XMLAttributes(osusr_kfa_estabele.id as "id"),
XMLElement("content", XMLElement("name", nomecompleto)))
from osusr_kfa_estabele
start with osusr_kfa_estabele.id = p_ESTABELECIMENTOID
connect by nocycle prior osusr_kfa_estabele.id = osusr_kfa_estabele.estabelecimetnopaiid' ))
from dual))
from dual;
END GETXMLTREE;
有什么线索可以解释为什么会这样吗?
谢谢您的收件人放错地方了。尝试:
SELECT XMLELEMENT --line 8
("root",
(select dbms_xmlgen.getxmltype
(dbms_xmlgen.newcontextfromhierarchy
('SELECT level,
XMLElement("item",XMLAttributes(osusr_kfa_estabele.id as "id"),
XMLElement("content", XMLElement("name", nomecompleto)))
from osusr_kfa_estabele
start with osusr_kfa_estabele.id = p_ESTABELECIMENTOID
connect by nocycle prior osusr_kfa_estabele.id = osusr_kfa_estabele.estabelecimetnopaiid' ))
from dual))
into MYXML
from dual;
你的目标在错误的地方。尝试:
SELECT XMLELEMENT --line 8
("root",
(select dbms_xmlgen.getxmltype
(dbms_xmlgen.newcontextfromhierarchy
('SELECT level,
XMLElement("item",XMLAttributes(osusr_kfa_estabele.id as "id"),
XMLElement("content", XMLElement("name", nomecompleto)))
from osusr_kfa_estabele
start with osusr_kfa_estabele.id = p_ESTABELECIMENTOID
connect by nocycle prior osusr_kfa_estabele.id = osusr_kfa_estabele.estabelecimetnopaiid' ))
from dual))
into MYXML
from dual;
DUAL中没有定义XMLELEMENT字段。好吧……那么我如何绕过这个事实呢?DUAL中没有定义XMLELEMENT字段。好吧……那么我如何绕过这个事实呢?