我是 XLQuery 的新手,正在尝试一个基本命令-
CREATE TABLE person_data (
person_id NUMBER(3),
person_data XMLTYPE
);
INSERT INTO person_data
(person_id, person_data)
VALUES
(1, XMLTYPE('
<PDRecord>
<PDName>Daniel Morgan</PDName>
<PDDOB>12/1/1951</PDDOB>
<PDEmail>damorgan@u.washington.edu</PDEmail>
</PDRecord>')
);
INSERT INTO person_data
(person_id, person_data)
VALUES
(2, XMLTYPE('
<PDRecord>
<PDName>Jack Cline</PDName>
<PDDOB>5/17/1949</PDDOB>
<PDEmail>damorgan@u.washington.edu</PDEmail>
</PDRecord>')
);
INSERT INTO person_data
(person_id, person_data)
VALUES
(3, XMLTYPE('
<PDRecord>
<PDName>Caleb Small</PDName>
<PDDOB>1/1/1960</PDDOB>
<PDEmail>damorgan@u.washington.edu</PDEmail>
</PDRecord>')
);
我试过的...
select person_id,
XMLQuery('for $i in /PDRecord where $i/PDName = "Jack Cline" order by $i/PDName return $i/PDName'
passing by value t.person_data
returning CONTENT ) XMLData
from person_data t;
但它因错误而失败
ORA-30625: 不允许对 NULL SELF 参数进行方法调度
无法理解为什么?另外,如果您知道一些很好的 XMlQuery 教程,请指出这一点。
注意:我已经阅读了文档。