任何人都知道我是否可以從遊標生成XMLType而無需手動指定每行的名稱?從遊標獲取XMLType
我希望能夠遍歷我的查詢,併爲每一行獲取單獨的XML。
我無法使用DBMS_XMLGEN.getXMLType獲得解決方案,但也許我沒有正確使用它。
CREATE OR REPLACE PROCEDURE "MY_SCHEMA"."TEST" AS
CURSOR mySelectCursor is
SELECT '1a' as "column1", '1b' as "column2" FROM DUAL
UNION ALL
SELECT '2a' as "column1", '2b' as "column2" FROM DUAL;
myXMLType XMLType;
BEGIN
FOR mySelect in mySelectCursor
LOOP
-- I would like to replace the following line of code
myXMLType := XMLType('<row><column1>' || mySelect."column1" || '</column1><column2>' || mySelect."column2" || '</column2></row>');
-- by something similar to this (not working) one
--myXMLType := mySelect.getXMLType();
dbms_output.put_line(myXMLType.getClobVal());
END LOOP;
END;
--The following code outputs
--<row><column1>1a</column1><column2>1b</column2></row>
--<row><column1>2a</column1><column2>2b</column2></row>
不要忘記我想循環查詢我的查詢,併爲每行獲取單獨的xml。 – fop6316
@ fop6316 - 添加了代碼片段以循環通過光標。您需要使用sys_xmlagg和sys_xmlgen。 –