<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    szhswl
    宋針還的個人空間
    存儲過程讀取xml文件實例:
     1PROCEDURE EXECUTE_DATESERV IS
     2  BEGIN
     3    DECLARE
     4      DIR         VARCHAR2(50);
     5      SERVFILE    VARCHAR2(20);
     6      V_XP        XMLPARSER.PARSER;
     7      V_DOC       XMLDOM.DOMDOCUMENT;
     8      V_MAPPINGS  XMLDOM.DOMNODELIST;
     9      V_MAPLEN    NUMBER(3);
    10      V_TABLE     XMLDOM.DOMNODELIST;
    11      V_TABLELEN  NUMBER(3);
    12      V_FIELD     XMLDOM.DOMNODELIST;
    13      V_MAPITEM   XMLDOM.DOMNODE;
    14      V_TABLEITEM XMLDOM.DOMNODE;     NNM         XMLDOM.DOMNAMEDNODEMAP;
    15      V_BO        VARCHAR2(20);
    16      V_VALID     VARCHAR2(20);
    17      V_FIELDID   VARCHAR2(20);
    18      V_BOOLEAN   NUMBER(2);
    19      V_TEXT      VARCHAR2(200);
    20    BEGIN
    21      DIR      := '/oracle/szh';
    22      SERVFILE := 'dateserv.xml';
    23      V_XP     := XMLPARSER.NEWPARSER;
    24      XMLPARSER.SETVALIDATIONMODE(V_XP, FALSE);
    25      XMLPARSER.SETBASEDIR(V_XP, DIR);
    26      XMLPARSER.PARSE(V_XP, DIR || '/' || SERVFILE);
    27      V_DOC := XMLPARSER.GETDOCUMENT(V_XP);
    28      XMLPARSER.FREEPARSER(V_XP);
    29      V_MAPPINGS := XMLDOM.GETELEMENTSBYTAGNAME(V_DOC, 'mappings');
    30      V_MAPLEN   := XMLDOM.GETLENGTH(V_MAPPINGS);
    31      FOR V_I IN 0 .. V_MAPLEN - 1 LOOP
    32        V_MAPITEM  := XMLDOM.ITEM(V_MAPPINGS, V_I);
    33        V_TABLE    := XMLDOM.GETCHILDNODES(V_MAPITEM);
    34        V_TABLELEN := XMLDOM.GETLENGTH(V_TABLE);
    35        FOR V_J IN 0 .. V_TABLELEN - 1 LOOP
    36          V_TABLEITEM := XMLDOM.ITEM(V_TABLE, V_J);
    37          IF XMLDOM.GETNODENAME(V_TABLEITEM) = 'table' THEN
    38            NNM  := XMLDOM.GETATTRIBUTES(V_TABLEITEM);
    39            V_BO := XMLDOM.GETNODEVALUE(XMLDOM.ITEM(NNM, 0));
    40          END IF;
    41          V_FIELD   := XMLDOM.GETCHILDNODES(V_TABLEITEM);
    42          V_FIELDID := XMLDOM.GETNODEVALUE(XMLDOM.GETFIRSTCHILD(XMLDOM.ITEM(V_FIELD,
    43                                                                            0)));
    44          V_VALID   := XMLDOM.GETNODEVALUE(XMLDOM.GETFIRSTCHILD(XMLDOM.ITEM(V_FIELD,
    45                                                                            1)));
    46          PRO_SZH_SEQ.UPDATE_ENDDATE(V_BO,
    47                                     V_FIELDID,
    48                                     V_VALID,
    49                                     V_BOOLEAN,
    50                                     V_TEXT);
    51          IF V_BOOLEAN <> 1 THEN
    52            EXECUTE_INSERT_ERROR('pk_szh_date.excute_dateserv error :' ||
    53                                 V_TEXT);
    54          END IF;
    55        END LOOP;
    56      END LOOP;
    57      XMLDOM.FREEDOCUMENT(V_DOC);
    58    END;
    59    NULL;
    60  END EXECUTE_DATESERV;
    過程相應的XML文件:
     1<?xml version="1.0" encoding="ISO-8859-1"?>
     2<mappings>    
     3    <table name="enrollcon" >
     4        <field>enddate</field>
     5        <valid>valid</valid>
     6    </table>
     7    <table name="precautcon" >
     8        <field>enddate</field>
     9        <valid>valid</valid>
    10    </table>
    11    <table name="jrbill" >
    12        <field>endtime</field>
    13        <valid>validflag</valid>
    14    </table>
    15    <table name="jr97" >
    16        <field>endtime</field>
    17        <valid>validflag</valid>
    18    </table>
    19    <table name="mer" >
    20        <field>exitdate</field>
    21        <valid>valid</valid>
    22    </table>
    23    <table name="merabate" >
    24        <field>enddate</field>
    25        <valid>valid</valid>
    26    </table>
    27    <table name="booking" >
    28        <field>obligatedate</field>
    29        <valid>valid</valid>
    30    </table>
    31</mappings>
    如果報錯ORA-20100:Error occurred while parsing: No such file or directory,在服務器端首先把文件的讀取權限授予運行存儲過程的用戶,如:
    GRANT READ[,WRITE] ON DIRECTORY directory TO username;
    實例:grant read, write on directory exp_dir to user;



    ---------------------------------------------------------------------------------------------------------------------------------
    說人之短,乃護己之短。夸己之長,乃忌人之長。皆由存心不厚,識量太狹耳。能去此弊,可以進德,可以遠怨。
    http://m.tkk7.com/szhswl
    ------------------------------------------------------------------------------------------------------ ----------------- ---------
    posted on 2007-12-05 11:13 宋針還 閱讀(894) 評論(0)  編輯  收藏 所屬分類: 存儲過程

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久九九亚洲精品| 亚洲精品无码99在线观看 | 亚洲w码欧洲s码免费| 五月天网站亚洲小说| 午夜影院免费观看| 久久久久亚洲AV无码专区首JN| 久久这里只精品热免费99| 亚洲AV无码国产在丝袜线观看| 国产精品免费观看调教网| 久久精品国产亚洲av日韩 | 天天看免费高清影视| 亚洲男人的天堂网站| 五月婷婷亚洲综合| 中文字幕av无码不卡免费| 亚洲阿v天堂在线| 亚洲一区二区三区免费视频| 亚洲AV成人影视在线观看| 日本一道本高清免费| 一区二区三区免费在线视频 | 黄页网站在线观看免费| 亚洲精品无码专区久久久| 99久久精品免费视频| 亚洲av永久无码天堂网| 中文字幕亚洲电影| 蜜臀AV免费一区二区三区| 亚洲日韩乱码中文字幕| 亚洲综合色视频在线观看| 亚洲精品在线免费看| 深夜a级毛片免费视频| 久久久影院亚洲精品| 拍拍拍又黄又爽无挡视频免费| 美女裸免费观看网站| 亚洲伊人久久大香线蕉苏妲己| 成年人免费观看视频网站| 一级毛片免费在线观看网站| 亚洲影院在线观看| 免费在线观看污网站| 91精品手机国产免费| 无人视频在线观看免费播放影院| 午夜亚洲AV日韩AV无码大全| 日韩高清免费观看|