oracle解析xml字符串常用腳本

DECLARE

成都創(chuàng)新互聯(lián)專注于大英網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供大英營銷型網(wǎng)站建設,大英網(wǎng)站制作、大英網(wǎng)頁設計、大英網(wǎng)站官網(wǎng)定制、小程序制作服務,打造大英網(wǎng)絡公司原創(chuàng)品牌,更為您提供大英網(wǎng)站排名全網(wǎng)營銷落地服務。

    l_operator VARCHAR2(100);

    l_year     VARCHAR2(10);

    l_month    VARCHAR2(10);

    l_xml_str VARCHAR2(4000); --xml字符串報文

    l_xmltype xmltype;

BEGIN

    --給定XML報文串

    l_xml_str := '<?xml version="1.0" encoding="UTF-8"?>

<XMLMSG>

  <INFO>

    <OPERATOR>SMILE</OPERATOR>

    <YEAR>2019</YEAR>

    <MONTH>12</MONTH> 

  </INFO>

  <STRARRAYS>

   <STRARRAY>

    <ID>1</ID>

    <CODE>CODE1</CODE>

    <NAME>NAME1</NAME>

  </STRARRAY>

  <STRARRAY>

    <ID>2</ID>

    <CODE>CODE2</CODE>

    <NAME>NAME2</NAME>

  </STRARRAY>

  <STRARRAY>

    <ID>3</ID>

    <CODE>CODE3</CODE>

    <NAME>NAME3</NAME>

  </STRARRAY>

  </STRARRAYS>

</XMLMSG>';

    --將XML報文轉(zhuǎn)換成xmltype類型,便于后續(xù)解析

    l_xmltype := xmltype.createxml(l_xml_str);

    --普通簡單的解析字段值

    SELECT xmlt.operator

          ,xmlt.year

          ,xmlt.month

    INTO   l_operator

          ,l_year

          ,l_month

    FROM   xmltable('$root/XMLMSG/INFO' passing l_xmltype AS "root" columns operator VARCHAR2(500) path 'OPERATOR'

                    ,YEAR VARCHAR2(500) path 'YEAR'

                    ,MONTH VARCHAR2(500) path 'MONTH') AS xmlt;

    dbms_output.put_line('operator:' || l_operator || '--year:' || l_year || '--month:' || l_month);

    --遍歷輸出二維數(shù)組

    FOR rec_list IN (SELECT xmlt.id

                           ,xmlt.code

                           ,xmlt.name

                     INTO   l_operator

                           ,l_year

                           ,l_month

                     FROM   xmltable('$root/XMLMSG/STRARRAYS/STRARRAY' passing l_xmltype AS "root" columns id VARCHAR2(500) path 'ID'

                                     ,code VARCHAR2(500) path 'CODE'

                                     ,NAME VARCHAR2(500) path 'NAME') AS xmlt) LOOP

        dbms_output.put_line(rec_list.id || '--' || rec_list.code || '--' || rec_list.name);

    END LOOP;

EXCEPTION

    WHEN fnd_api.g_exc_error THEN

        dbms_output.put_line('error:' || SQLCODE || '--' || SQLERRM);

    WHEN fnd_api.g_exc_unexpected_error THEN

        dbms_output.put_line('Unexpected_error.' || SQLCODE || '--' || SQLERRM);

    WHEN OTHERS THEN

        dbms_output.put_line('Other error:' || SQLCODE || '--' || SQLERRM);

END;

網(wǎng)頁題目:oracle解析xml字符串常用腳本
URL標題:http://muchs.cn/article2/iiogic.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、小程序開發(fā)、品牌網(wǎng)站制作、網(wǎng)站建設、App設計App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)