2

最近、Oracle SQL Developer を使い始めました。クエリを正常に実行し、結果を XML (encoding='UTF-8') にエクスポートしました。例えば

<RESULTS>
    <ROW>
        <COLUMN NAME="ACCOUNTID"><![CDATA[1]]></COLUMN>
        <COLUMN NAME="ADDRLINE1"><![CDATA[XYZ company]]></COLUMN>
        <COLUMN NAME="ADDRLINE2"><![CDATA[]]></COLUMN>
        <COLUMN NAME="ADDRLINE3"><![CDATA[999 6th AVENUE]]></COLUMN>
        <COLUMN NAME="ADDRLINE4"><![CDATA[NEW YORK]]></COLUMN>
        <COLUMN NAME="ADDRLINE5"><![CDATA[NEW YORK, NY 10112]]></COLUMN>
        <COLUMN NAME="COUNTRY"><![CDATA[USA]]></COLUMN>
    </ROW>

私の質問: CDATA 定義なしでエクスポートする方法はありますか? つまり、それは「単純な」データであり、私が欲しい/必要なものは次のとおりです。

<Row>
    <X>1</X>
    <ACCOUNTID>1</ACCOUNTID>
    <ADDRLINE1>XYZ company</ADDRLINE1>
    <ADDRLINE2/>
    <ADDRLINE3>999 6th AVENUE </ADDRLINE3>
    <ADDRLINE4>NEW YORK</ADDRLINE4>
    <ADDRLINE5>NEW YORK, NY 10112</ADDRLINE5>
    <COUNTRY>USA</COUNTRY>
</Row>

設定を調べたところ、有用なものは見つかりませんでした。結果の XML が XSL 経由で生成されたという非常に古い投稿を見ましたが、XSL が見つかりませんでした。

誰かがこれをやったことがありますか、または何かアイデアがありますか?

4

1 に答える 1

0

クエリで取得できる最も近いものは次のとおりです。

(WITHテーブルレコードを生成するために句を使用しました)

WITH t
  AS (SELECT '1' AS x,
             '1' AS accountid,
             'XYZ company' AS addrline1,
             NULL AS addrline2,
             '999 6th AVENUE' AS addrline3,
             'NEW YORK' AS addrline4,
             'NEW YORK, NY 10112' AS addrline5,
             'USA' AS country
        FROM dual)
SELECT xmlelement("row",
          xmlelement(x,x),
          xmlelement(accountid,accountid),
          xmlelement(addrline1,addrline1),
          xmlelement(addrline2,addrline2),
          xmlelement(addrline3,addrline3),
          xmlelement(addrline4,addrline4),
          xmlelement(addrline5,addrline5),
          xmlelement(country,country)
       )
  FROM t;

生成された出力は次のとおりです。

<row>
  <X>1</X>
  <ACCOUNTID>1</ACCOUNTID>
  <ADDRLINE1>XYZ company</ADDRLINE1>
  <ADDRLINE2></ADDRLINE2>
  <ADDRLINE3>999 6th AVENUE</ADDRLINE3>
  <ADDRLINE4>NEW YORK</ADDRLINE4>
  <ADDRLINE5>NEW YORK, NY 10112</ADDRLINE5>
  <COUNTRY>USA</COUNTRY>
</row>

それが役に立てば幸い...

于 2012-08-03T15:20:43.163 に答える