<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;
    過程相應(yīng)的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,在服務(wù)器端首先把文件的讀取權(quán)限授予運行存儲過程的用戶,如:
    GRANT READ[,WRITE] ON DIRECTORY directory TO username;
    實例:grant read, write on directory exp_dir to user;



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

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 中日韩亚洲人成无码网站| 亚洲va国产va天堂va久久| 最新国产成人亚洲精品影院| 一级毛片免费观看不卡的| 亚洲精品二区国产综合野狼| 在线看片免费人成视频播| 亚洲av无码乱码国产精品| 无码国产精品一区二区免费模式| 亚洲av中文无码乱人伦在线播放| 久久99免费视频| 97亚洲熟妇自偷自拍另类图片| 人妻无码一区二区三区免费| 亚洲美女在线观看播放| 国产成人精品免费视频大全麻豆| 亚洲an日韩专区在线| 精品国产精品久久一区免费式| 色婷婷精品免费视频| 在线亚洲精品自拍| 精品视频在线免费观看| 亚洲av无码一区二区三区观看| 午夜毛片不卡高清免费| 久久久精品视频免费观看 | 亚洲人成色4444在线观看| 成人永久免费高清| 一级毛片免费播放视频| 中文字幕精品亚洲无线码二区 | 日韩在线观看视频免费| 国产亚洲精品观看91在线| 皇色在线视频免费网站| 菠萝菠萝蜜在线免费视频| 亚洲精品制服丝袜四区| 国产在线观看片a免费观看| 日韩欧美亚洲国产精品字幕久久久| 免费成人在线观看| 日本免费大黄在线观看| 亚洲AV无码一区二区三区性色| 亚洲一级特黄大片无码毛片| 18女人毛片水真多免费| 精品久久久久亚洲| 亚洲AV福利天堂一区二区三| 女人被男人桶得好爽免费视频 |