将xml转换为表格

时间:2009-10-18 12:08:43

标签: sql xml oracle plsql

我需要将oracle表转换为xml,然后将其返回到表格。

我使用xmlgen转换了一个表,但我不知道如何反转转换。我正在寻找将xml文件转换为表格的示例。

5 个答案:

答案 0 :(得分:3)

Herehere是有效的例子......

答案 1 :(得分:2)

您可以使用XMLTABLE语法在xml表上创建关系视图。

e.g。 SELECT仓库名称仓库,    仓库2.“水”,仓库2.“铁路”    从仓库,    XMLTABLE( '/仓库'       通过warehouses.warehouse_spec       列          “Water”varchar2(6)PATH'/ Warehouse / WaterAccess',          “铁路”varchar2(6)路径'/仓库/铁路访问')       warehouse2;

http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/functions228.htm

答案 2 :(得分:1)

也许你需要Hyperjaxb?

它可以从XML构建数据库模式,反之亦然,并生成对象绑定以在DB和XML之间进行转换,反之亦然:

https://hyperjaxb.dev.java.net/

https://www.hibernate.org/218.html

答案 3 :(得分:0)

您可以使用XSLT生成CSV格式的文本。

答案 4 :(得分:0)

根据您最终要做的事情,一种简单的方法是在SQL中使用XMLSequence()和Table()函数将节点集从Xpath转换为rowsource:

SELECT
    t.extract( '/bar/@id' ).getNumberVal() ID
FROM
    TABLE( XMLSEQUENCE( 
        XMLTYPE( 
            '<foo><bar id="1" /><bar id="2" /></foo>' 
        ).extract( '//bar' ) 
    ) ) t