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

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

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

    隨筆-94  評論-56  文章-3  trackbacks-0
    在Oracle數據庫中,sequence等同于序列號,每次取的時候sequence會自動增加,一般會作用于需要按序列號排序的地方。

    1、Create Sequence
    (注釋:你需要有CREATE SEQUENCE或CREATE ANY SEQUENCE權限)
    CREATE SEQUENCE emp_sequence
    INCREMENT BY 1 —— 每次加幾個
    START WITH 1 —— 從1開始計數
    NOMAXVALUE —— 不設置最大值
    NOCYCLE —— 一直累加,不循環
    CACHE 10;
    - 假如指定CACHE值,Oracle就可以預先在內存里面放置一些sequence,這樣存取的快些。cache里面的取完后,Oracle自動再取一組到cache. 使用cache或許會跳號, 比如數據庫突然不正常down掉(shutdown abort),cache中的sequence就會丟失。 所以可以在create sequence的時候用nocache防止這種情況。

    只要定義了emp_sequence,你就可以用使CURRVAL,NEXTVAL
    CURRVAL=返回 sequence的當前值
    NEXTVAL=增加sequence的值,然后返回 sequence 值
    例如:
    emp_sequence.CURRVAL
    emp_sequence.NEXTVAL

    可以使用sequence的地方:
    。不包含子查詢、snapshot、VIEW的 SELECT 語句
    。INSERT語句的子查詢中
    。INSERT語句的VALUES中
    。UPDATE 的 SET中
    例:
    INSERT INTO emp VALUES
    (empseq.nextval, 'LEWIS', 'CLERK',7902, SYSDATE, 1200, NULL, 20);
    SELECT empseq.currval FROM DUAL;

    2、Alter Sequence
    你需要有sequence的owner,或者擁有ALTER ANY SEQUENCE 權限才能改動sequence.
    可以alter除start至以外的所有sequence參數。如果想要改變start值,必須 drop sequence 再 re-create .

    Alter sequence示例:
    ALTER SEQUENCE emp_sequence INCREMENT BY 10 MAXVALUE 10000 CYCLE -- 到10000后從頭開始 NOCACHE ;
    posted on 2009-10-12 16:02 小言身寸 閱讀(365) 評論(0)  編輯  收藏 所屬分類: 數據庫/SQL語言
    主站蜘蛛池模板: 天天影院成人免费观看| 久久精品国产亚洲AV大全| 100000免费啪啪18免进| 久久免费国产精品| 亚洲人成人网毛片在线播放| 亚洲成AV人片在线播放无码| 国产免费午夜a无码v视频| 无限动漫网在线观看免费| 97无码人妻福利免费公开在线视频| 亚洲精品伦理熟女国产一区二区 | 亚洲国产日韩在线成人蜜芽| 亚洲综合最新无码专区| 免费看的成人yellow视频| 亚洲高清视频免费| 国产99视频精品免费专区| 插鸡网站在线播放免费观看| 牛牛在线精品观看免费正| 亚洲国产成人久久一区二区三区| 18gay台湾男同亚洲男同| 亚洲情综合五月天| 日韩亚洲变态另类中文| 免费大黄网站在线观看| 国产美女被遭强高潮免费网站| 一二三四在线播放免费观看中文版视频 | 一区二区三区在线免费 | 全亚洲最新黄色特级网站| 精品免费久久久久久成人影院| 无码国产精品一区二区免费式直播 | 久久亚洲AV午夜福利精品一区 | 亚洲s码欧洲m码吹潮| 亚洲熟妇无码一区二区三区| 亚洲成人网在线播放| 久久亚洲AV成人无码电影| 亚洲成人精品久久| 久久久综合亚洲色一区二区三区| 亚洲AV综合色区无码一区爱AV| 亚洲色婷婷综合久久| 国产亚洲色婷婷久久99精品| 亚洲夜夜欢A∨一区二区三区| 中文字幕日韩亚洲| 国产亚洲福利精品一区|