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

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

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

    e代劍客——溫柔一刀

    生活就像海洋,只有意志堅(jiān)強(qiáng)的人,才能到達(dá)彼岸

       :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      76 隨筆 :: 7 文章 :: 215 評(píng)論 :: 0 Trackbacks
    通過(guò)創(chuàng)建序列來(lái)實(shí)現(xiàn)
    ORACLE SEQUENCE的簡(jiǎn)單介紹


    在oracle中sequence就是所謂的序列號(hào),每次取的時(shí)候它會(huì)自動(dòng)增加,一般用在需要按序列號(hào)排序的地方。
    1、Create Sequence
    你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE權(quán)限,
    CREATE SEQUENCE emp_sequence
    INCREMENT BY 1 -- 每次加幾個(gè)
    START WITH 1 -- 從1開(kāi)始計(jì)數(shù)
    NOMAXVALUE -- 不設(shè)置最大值
    NOCYCLE -- 一直累加,不循環(huán)
    CACHE 10;

    一旦定義了emp_sequence,你就可以用CURRVAL,NEXTVAL
    CURRVAL=返回 sequence的當(dāng)前值
    NEXTVAL=增加sequence的值,然后返回 sequence 值
    比如:
    emp_sequence.CURRVAL
    emp_sequence.NEXTVAL

    可以使用sequence的地方:
    - 不包含子查詢、snapshot、VIEW的 SELECT 語(yǔ)句
    - INSERT語(yǔ)句的子查詢中
    - NSERT語(yǔ)句的VALUES中
    - UPDATE 的 SET中

    可以看如下例子:
    INSERT INTO emp VALUES
    (empseq.nextval, 'LEWIS', 'CLERK',7902, SYSDATE, 1200, NULL, 20);

    SELECT empseq.currval FROM DUAL;

    但是要注意的是:
    - 第一次NEXTVAL返回的是初始值;隨后的NEXTVAL會(huì)自動(dòng)增加你定義的INCREMENT BY值,然后返回增加后的值。CURRVAL 總是返回當(dāng)前SEQUENCE的值,但是在第一次NEXTVAL初始化之后才能使用CURRVAL,否則會(huì)出錯(cuò)。一次NEXTVAL會(huì)增加一次SEQUENCE的值,所以如果你在同一個(gè)語(yǔ)句里面使用多個(gè)NEXTVAL,其值就是不一樣的。明白?

    - 如果指定CACHE值,ORACLE就可以預(yù)先在內(nèi)存里面放置一些sequence,這樣存取的快些。cache里面的取完后,oracle自動(dòng)再取一組到cache。 使用cache或許會(huì)跳號(hào), 比如數(shù)據(jù)庫(kù)突然不正常down掉(shutdown abort),cache中的sequence就會(huì)丟失. 所以可以在create sequence的時(shí)候用nocache防止這種情況。

    2、Alter Sequence
    你或者是該sequence的owner,或者有ALTER ANY SEQUENCE 權(quán)限才能改動(dòng)sequence. 可以alter除start至以外的所有sequence參數(shù).如果想要改變start值,必須 drop sequence 再 re-create .
    Alter sequence 的例子
    ALTER SEQUENCE emp_sequence
    INCREMENT BY 10
    MAXVALUE 10000
    CYCLE -- 到10000后從頭開(kāi)始
    NOCACHE ;


    影響Sequence的初始化參數(shù):
    SEQUENCE_CACHE_ENTRIES =設(shè)置能同時(shí)被cache的sequence數(shù)目。

    可以很簡(jiǎn)單的Drop Sequence
    DROP SEQUENCE order_seq;
    posted on 2006-08-14 12:59 溫柔一刀 閱讀(569) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 數(shù)據(jù)庫(kù)相關(guān)
    聯(lián)系偶 zhupanjava@gmail.com 溫柔一刀
    主站蜘蛛池模板: 亚洲av成人一区二区三区在线观看| 国产免费观看网站| 亚洲国产婷婷六月丁香| 四虎成人精品国产永久免费无码 | 亚洲专区先锋影音| 国产成人AV片无码免费| 久久精品亚洲综合| 99视频精品全部免费观看| 亚洲色偷偷av男人的天堂| 麻豆国产精品免费视频| 精品亚洲456在线播放| 丝袜足液精子免费视频| 国产美女亚洲精品久久久综合| 亚洲日本久久久午夜精品| 岛国大片免费在线观看| 色婷婷亚洲一区二区三区| 亚洲日韩精品无码专区网站| 亚洲五月综合缴情婷婷| 处破痛哭A√18成年片免费| 亚洲av永久无码精品网址| 日本免费xxxx色视频| 国产午夜亚洲精品国产| 日韩精品亚洲专区在线观看| 国产精品玖玖美女张开腿让男人桶爽免费看| 国内精品乱码卡1卡2卡3免费| 亚洲欧美成人av在线观看| 亚洲精品国产日韩无码AV永久免费网| 中文字幕在线免费看| 亚洲免费视频播放| 日本在线看片免费人成视频1000| 亚洲国产综合自在线另类| 国产精品成人四虎免费视频| 三年在线观看免费观看完整版中文| 亚洲免费在线播放| 日本v片免费一区二区三区| 好男人资源在线WWW免费| 久久亚洲精品国产精品| 国产又长又粗又爽免费视频| 国产午夜精品免费一区二区三区| 国产精品亚洲自在线播放页码| 亚洲?V无码成人精品区日韩|