【问题标题】:Oracle Database 8: Export Table to XMLOracle Database 8:将表导出为 XML
【发布时间】:2015-03-24 13:54:47
【问题描述】:

是的,我知道...我们必须升级到最新的 Oracle DB 版本。 :-)

但在那之前:8.0.5.0.0 版是否支持任何类型的 XML 导出 - 除了手动假脱机...

select '<?xml ...' from dual;

据我所知,第一个相关的 XML 特性 (XMLType) 是在 Oracle 9i 中引入的(例如来源:http://web.stanford.edu/dept/itss/docs/oracle/9i/appdev.920/a96620/whatsnew.htm)?

【问题讨论】:

  • 不,“适当的”XML 支持从 Oracle 10 开始。

标签: xml oracle export


【解决方案1】:

我没有 8.0.5.0.0 的副本,因此无法测试这些,但认为它们可能会有所帮助。

Oracle 的SQL Developer IDE 为您提供了几种将查询导出为XML 的不同方法。

首先是在您的 SQL 查询中添加以下注释。

select /*xml*/ 
       *
  from hr.employees 

按 F5 作为脚本运行会得到以下输出:

<?xml version='1.0'  encoding='UTF8' ?>
<RESULTS>
    <ROW>
        <COLUMN NAME="EMPLOYEE_ID"><![CDATA[100]]></COLUMN>
        <COLUMN NAME="FIRST_NAME"><![CDATA[Steven]]></COLUMN>
        <COLUMN NAME="LAST_NAME"><![CDATA[King]]></COLUMN>
 ....

值得指出的是,/*xml*/ 是 SQL Developer IDE 的一个特性。

第二种方法是在 SQL Developer 中正常执行查询,然后右键单击结果网格并选择导出并选择 XML。

【讨论】:

  • 我实际上使用 SQL Developer 来处理 12c 开发数据库。这种组合绝对不会让我头疼 ;-) 但不幸的是,似乎没有办法将 SQL Developer 连接到 8.0.5.0.0 数据库:-/
【解决方案2】:

所以,在做了一些实验后回答自己:

  • 选项 1:通过 SQL*Plus 假脱机(是的,非常难看)
  • 选项 2:使用 PL/SQL 打印出 XML(复制/粘贴到最终文件,并没有那么好)
  • 选项 3:通过 Java/JDBC 连接到 DB,获取数据,并在 Java 端创建 XML。问题归结为如何将最近的 Java/JDBC 连接到旧的 8.0.5.0.0。 D B。但这可以处理:Using Multiple Oracle JDBC drivers in one Java application?

也许选项 2.5 可以在 PL/SQL 端使用 UTL_FILE,但使用选项 3 我可能会更开心。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-24
    • 1970-01-01
    • 2017-12-23
    • 2019-04-02
    • 1970-01-01
    • 2022-01-05
    • 2017-12-19
    • 2018-03-07
    相关资源
    最近更新 更多