Oracle 什么是XMLTABLE
什么是XMLTABLEOracle 什么是XMLTABLE,oracle,oracle10g,Oracle,Oracle10g,什么是XMLTABLE 请告诉我创建XMLTABLE的语法 从XMLTABLE获取记录的示例查询 在创建XMLTABLE之前,是否需要任何数据库级别的先决条件 可能就是您要查找的内容。该函数用于将xml对象转换为单独的字段。 但您可能想要构造一个包含xml内容的表,这是不同的 您可以使用包含xml内容的额外列创建表 CREATE TABLE mytable (my_id NUMBER PRIMARY KEY, my_xml XMLType); 然后在查询中使用xml内容 INSERT INTO
CREATE TABLE mytable (my_id NUMBER PRIMARY KEY, my_xml XMLType);
然后在查询中使用xml内容
INSERT INTO mytable VALUES (1,xmltype('<myxml id="D45"/>'));
SELECT my_id
,my_xml.extract('/myxml@id').getstringval()
from mytable
您好,xquery 1不工作,请告诉我以下错误:SQL>xquery 1 SP2-0042:未知命令“xquery 1”-忽略行的其余部分。你能告诉我原因吗?从XMLTABLE(“/prices/book”passing HTTPURITYPE”file:/D:/Sanjay_Thakur/book.xml”)中选择TITLE、SOURCE、to_number(PRICE)作为PRICE。getXML()列TITLE varchar2(100)path'/book/TITLE',SOURCE varchar2(100)path'/book/SOURCE',PRICE varchar2(40)path'/book/PRICE)这个查询给我以下错误:[1]:(错误):ORA-29273:HTTP请求失败ORA-06512:at“SYS.UTL_HTTP”,第1674行ORA-29261:at“SYS.HTTPURITYPE”错误参数ORA-06512:at“SYS.HTTPURITYPE”,第34行ORA-06512:at“SYS.HTTPURITYPE”,第97行,您能告诉我原因吗?您好,Andrew Russell,谢谢您的回复。您上面编写的测试用例在我这里运行得很好。此外,根据我给出的示例(如我前面的评论所述),如果我直接在浏览器中给出路径(即“file:/D:/Sanjay_Thakur/book.xml),文件确实会打开因为该文件存在于上述路径中。双击该文件时,它也会打开。只是想知道为什么我上面给出的示例不起作用。它给了我指向函数“getXML()”的错误“错误参数”。在浏览器中直接使用该路径与oracle数据库能够看到它不同。url是本地url“文件:”,而utl_http包和HTTPURITYPE仅适用于http:protocol。
1 SELECT seq
2 , id
3 , content
4 FROM XMLTABLE('/xml/myrec'
5 PASSING XMLType('<xml>'
6 ||'<myrec id="D12"><content>hello1</content></myrec>'
7 ||'<myrec id="D13"><content>hello2</content></myrec>
8 ||</xml>')
9 COLUMNS seq FOR ORDINALITY
10 , id VARCHAR2(100) PATH '@id'
11 , content VARCHAR2(100) PATH 'content'
12* ) AS my_table
SEQ ID CONTENT
---- ----- --------------------
1 D12 hello1
2 D13 hello2