0
聪明人!将集合包装为PL/SQL中的XMLTYPE(Oracle)
可以说我有一个表:
id NUMBER name VARCHAR2 info XMLTYPE
--
1 Brad <?xml version="1.0" encoding="ISO-8859-5"?>
2 Angelina <?xml version="1.0" encoding="ISO-8859-5"?>
在我的包,我可以选择它的一些集合变量v_table。
我需要将其转换为XML并返回XMLTYPE,像这样:
<?xml version="1.0" encoding="ISO-8859-5"?>
<rows>
<row>
<id type="NUMBER">1</id>
<name type="VARCHAR2">Brad</name>
<info type="XMLTYPE"><!-- somehow insert here xml, maybe base64 encoded --></info>
</row>
<row>
<id type="NUMBER">2</id>
<name type="VARCHAR2">Angelina</name>
<info type="XMLTYPE"><!-- somehow insert here xml, maybe base64 encoded --></info>
</row>
</rows>
所以我需要做一些通用的功能,任何集合转换成XML。不幸的是,我不知道PL/SQL(只有MySQL,MsSQL),而我只是不知道正确的开始方式。你能给我一些建议吗?
PS:“type”属性不是必需的,但会很酷。
它是否需要转换一个集合,还是有足够的功能来直接将SQL转换为XML?包[DBMS_XMLGEN](https://docs.oracle.com/database/121/ARPLS/d_xmlgen.htm#ARPLS374)已经做到了。例如:'从双选择'dbms_xmlgen.getxml('select * from dual');'。然后,您可以通过XMLType函数TRANSFORM将样式表应用于结果。 –
我知道我只是不知道明显的东西。谢谢! – Levsha