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

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

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

    瘋狂

    STANDING ON THE SHOULDERS OF GIANTS
    posts - 481, comments - 486, trackbacks - 0, articles - 1
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    RAISE_APPLICATION_ERROR

    Posted on 2011-08-21 12:42 瘋狂 閱讀(396) 評(píng)論(0)  編輯  收藏 所屬分類: database

     

     RAISE_APPLICATION_ERROR 是將應(yīng)用程序?qū)S械腻e(cuò)誤從服務(wù)器端轉(zhuǎn)達(dá)到客戶端應(yīng)用程序。

     

          RAISE_APPLICATION_ERROR 的聲明:

     

          PROCEDURE RAISE_APPLICATION_ERROR

                                                        ( error_number_in IN NUMBER, error_msg_in IN VARCHAR2);

     

          里面的錯(cuò)誤代碼和內(nèi)容,都是自定義的。說明是自定義,當(dāng)然就不是系統(tǒng)中已經(jīng)命名存在的錯(cuò)誤類別,是屬于一種自定義事務(wù)錯(cuò)誤類型,才調(diào)用此函數(shù)。

          error_number_in 之容許從 -20000 到 -20999 之間,這樣就不會(huì)與 ORACLE 的任何錯(cuò)誤代碼發(fā)生沖突。

          error_msg_in 的長(zhǎng)度不能超過 2K,否則截取 2K。

     

     

    舉個(gè)例吧:

    阻止小于18歲的用戶增加到數(shù)據(jù)庫(kù) employee 表中

     

    CREATE OR REPALCE TRIGGER minimun_age_check

    BEFORE INSERT ON employee

    FOR EACH ROW

    BEGIN

          IF ADD_MONTHS( :new.birth_date, 18*12) > SYSDATE

          THEN

                 RAISE_APPLICATION_ERROR(-20001, 'Employees must at least eighteen years of age.');

          END IF;

    END;

     

     

    在客戶端,你可以寫一個(gè)類似下面的程序,來測(cè)試一下。

     

    DECLARE

     

        no_babies_allowed EXCEPTION;

     

         /*將名稱與用于觸發(fā)器中的錯(cuò)誤號(hào)碼關(guān)聯(lián)起來*/

         PRAGMA EXCEPTION_INIT(no_babies_allowed, -20001);

     

    BEGIN

     

           INSERT INTO employee ....;

     

    EXCEPTION

           WHEN no_babies_allowed

           THEN

                  /*

                  || SQLERRM 將傳遞給內(nèi)置過程 RAISE_APPLICATION_ERROR 的消息返回

                  */

                  DBMS_OUTPUT.PUT_LINE(SQLERRM);

    END;

     

    主站蜘蛛池模板: 亚洲AV之男人的天堂| 亚洲av日韩综合一区在线观看| 毛片a级毛片免费观看免下载| 亚洲人成色99999在线观看| 黄页免费的网站勿入免费直接进入| 亚洲国产精品成人午夜在线观看| 亚洲精品在线视频| 另类小说亚洲色图| 一本色道久久88综合亚洲精品高清| 亚洲精品无码中文久久字幕| 黑人大战亚洲人精品一区| 最近最新MV在线观看免费高清| 在线综合亚洲欧洲综合网站| 免费大片黄手机在线观看| 88xx成人永久免费观看| 国产成人va亚洲电影| 亚洲熟妇无码久久精品| 成人人观看的免费毛片| a在线免费观看视频| 亚洲AV无码资源在线观看| 亚洲午夜视频在线观看| 亚洲第一区精品观看| 91精品国产免费久久久久久青草| 亚洲一级特黄特黄的大片| 国产亚洲无线码一区二区| 国产精品色午夜免费视频| 国产精品九九久久免费视频| 久久亚洲精品中文字幕无码| 国产精品色午夜视频免费看| 可以免费看黄视频的网站| 免费无码作爱视频| 羞羞视频免费网站日本| 亚洲免费福利在线视频| 亚洲综合婷婷久久| 黄网址在线永久免费观看 | 亚洲AV日韩精品久久久久久久| 国产jizzjizz视频全部免费| 狠狠躁狠狠爱免费视频无码| 亚洲av中文无码字幕色不卡| 亚洲1区1区3区4区产品乱码芒果 | 7x7x7x免费在线观看|