我将在存储过程中使用SQL查询从数据库中获取少量记录,我的要求是我需要将这些记录转换为XML格式,并将此XML作为OUT PARAM发送到同一存储过程中。
你能帮助我们吗
谢谢!
答案 0 :(得分:3)
DBMS_XMLGEN.GETXML可以将查询转换为XML。例如:
select DBMS_XMLGEN.GETXML (q'!
select 1 value1, 'asdf' value2 from dual union all
select 2 value2, 'fdsa' value2 from dual
!') from dual;
返回包含此数据的CLOB:
<?xml version="1.0"?>
<ROWSET>
<ROW>
<VALUE1>1</VALUE1>
<VALUE2>asdf</VALUE2>
</ROW>
<ROW>
<VALUE1>2</VALUE1>
<VALUE2>fdsa</VALUE2>
</ROW>
</ROWSET>
在存储过程中,将其选择为OUT CLOB参数。
答案 1 :(得分:2)
如果您的要求比仅使用jonearles建议的SQL语句更复杂,则另一个选项是XMLDOM包,它允许您使用PL / SQL创建XML。
它比DBMS_XMLGEN更复杂,但它也更强大。