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

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

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

    莊周夢蝶

    生活、程序、未來
       :: 首頁 ::  ::  :: 聚合  :: 管理

    PL/SQL學習筆記(五)

    Posted on 2007-02-11 19:59 dennis 閱讀(917) 評論(0)  編輯  收藏 所屬分類: 數據庫技術

    編寫控制結構:順序結構,條件結構,循環結構

    一。條件語句:

    1。與delphi或者java,或者其他任何語言的條件語句基本一樣咯:

    單條件:

    IF condition THEN

    ? ......

    END IF;

    雙條件:

    IF condition THEN

    ? ......

    ELSE

    ? ...

    END IF;

    多條件:

    IF condition THEN

    ?? ...

    ELSEIF conditon THEN

    ?? ....

    ELSEIF conditon THEN

    ?? ....

    ELSE

    ?? ....

    END IF;

    ?

    舉例:

    DECLARE
    ??v_sal?
    NUMBER ( 6 , 2 );
    ??v_id?
    NUMBER ;
    BEGIN
    ??v_id:
    = ' &id ' ;
    ??
    SELECT ?salary? into ?v_sal? FROM ?employee
    ??
    WHERE ?id = v_id;
    ??
    IF ?v_sal < 4000 ? THEN
    ?????
    update ?employee? set ?salary = (v_sal + 100 )? where ?id = v_id;
    ??
    ELSE
    ?????
    update ?employee? set ?salary = (v_sal - 900 )? where ?id = v_id;
    ??
    END ? IF ;
    END ;


    二。CASE語句:

    各種語言的switch ...case語句相同,只不過沒有switch關鍵字。

    1。使用單一選擇符進行比較:

    ?

    CASE ?selector

    ??
    WHEN ?expression1? THEN ?;

    ??
    WHEN ?expression? 2 ? THEN ?;

    ??

    ?

    END CASE;

    2。多種條件比較:

    ?

    CASE

    ??
    WHEN ?condition1? THEN ?;

    ??
    WHEN ?condition2? THEN ?;

    ??
    WHEN ?condition3? THEN ?;

    END CASE;
    ??

    ?

    ?

    (三)循環語句:

    3種循環:

    1。基本循環,至少執行一次:

    LOOP

    ?? statement1;

    ???...

    ?? EXIT WHEN 退出循環條件;

    END LOOP1;

    例如:

    ?

    LOOP

    ??
    insert ? into ?employee(id,name)? values (i, ' dennis ' );

    ??i:
    = i + 1 ;

    ??
    EXIT ? WHEN ?i > 10 ;

    END ?LOOP;

    ?

    2。while循環:

    WHILE conditon1 LOOP

    ?? statement1;

    ?? ...

    END LOOP;

    比如上面的例子改寫為:

    ?

    WHILE ?i <= 10 ?LOOP

    ???
    insert ? into ?employee(id,name)? values (i, ' dennis ' );?

    ???i:
    = i + 1 ;

    END ?LOOP;

    ?

    3。FOR循環,類似于ruby的FOR循環:

    FOR counter IN [REVERSE] 下限..上限 LOOP

    ? statement1;

    ??...

    END LOOP;

    REVERSE參數可選,有的話表示從上限往下限遞減。

    ?

    (四)順序控制語句

    PL/SQL也提供了GOTO和NULL語句用于控制語句執行順序,GOTO語句與JAVA的機制相似,通過label來實現跳轉,盡量不要使用。NULL語句不會執行任何操作,它的存在主要是為了提高程序的可讀性。?

    主站蜘蛛池模板: 成人国产mv免费视频| 免费一区二区无码东京热| 成人免费观看男女羞羞视频| fc2免费人成在线| 黄色网站软件app在线观看免费 | 国产精彩免费视频| 国产三级免费观看| 亚洲人成网7777777国产| 亚洲午夜久久久精品影院| 亚洲国产精品综合久久20| 香蕉97碰碰视频免费| 无码av免费一区二区三区试看| 国产一卡二卡3卡四卡免费| 免费国产在线观看老王影院| 亚洲欧洲自拍拍偷午夜色无码| 亚洲男女一区二区三区| 精品视频免费在线| 亚洲视频免费一区| 亚洲成a人在线看天堂无码| 亚洲精品国产免费| 亚洲爆乳精品无码一区二区| 国产免费久久久久久无码| 三年片在线观看免费大全| 亚洲成色www久久网站夜月| 午夜不卡AV免费| 免费人成视频在线观看视频| 亚洲va乱码一区二区三区| 亚洲精品免费视频| 亚洲国产美女精品久久久久∴| 国产亚洲视频在线观看| 黄页网站免费观看| 亚洲码在线中文在线观看| 久久精品免费观看国产| 中文字幕亚洲专区| 免费少妇a级毛片人成网| 精品亚洲av无码一区二区柚蜜| 女人被免费视频网站| 一本天堂ⅴ无码亚洲道久久| 97免费人妻无码视频| 亚洲最大中文字幕| 亚洲免费人成视频观看|