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

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

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

    posts - 60,comments - 71,trackbacks - 0

        mysql等其他數據庫中有隨著記錄的插入而表ID自動增長的功能,而oracle卻沒有這樣的功能,但我們可以用序列和觸發器來實現這樣的功能.

    一)建立序列:
    create sequence SMSLOG_SEQ
    minvalue 
    1
    maxvalue 
    999999999999999999
    start 
    with 601
    increment 
    by 1
    cache 
    20;
    二)建立觸發器:
    CREATE OR REPLACE TRIGGER "smslog_trig"
      BEFORE 
    INSERT ON smslog
      REFERENCING OLD 
    AS OLD NEW AS NEW FOR EACH ROW 
    DECLARE
    BEGIN
      
    SELECT smslog_seq.NEXTVAL INTO :NEW.ID FROM DUAL;
    END smslog_trig;
    三)建立表:
    create table SMSLOG
    (
      ID       
    NUMBER not null,
      USERID   
    NUMBER,
      USERNAME 
    VARCHAR2(200),
      DEPTID   
    NUMBER
    )

    這樣在執行: insert into smslog(userid,username,deptid) values('001','aaa','1001');時將會自動給ID自動賦值1,每插入一條記錄,ID的值會增加1.

    注:以上序列,觸發器等在PL/SQL工具中建立很容易,但如果是在命令行中創建,則語句最后要是"/",即執行的意思,而不是";",
    如創建觸發器,命令為:
    CREATE OR REPLACE TRIGGER "smslog_trig"
      BEFORE 
    INSERT ON smslog
      REFERENCING OLD 
    AS OLD NEW AS NEW FOR EACH ROW 
    DECLARE
    BEGIN
      
    SELECT smslog_seq.NEXTVAL INTO :NEW.ID FROM DUAL;
    END smslog_trig;
    /
    posted on 2008-05-31 16:19 henry1451 閱讀(1293) 評論(0)  編輯  收藏 所屬分類: Oracle技術
    主站蜘蛛池模板: 亚洲国产中文字幕在线观看| 免费看内射乌克兰女| 久久www免费人成看国产片| 亚洲国产综合久久天堂| 久久综合AV免费观看| 三年片在线观看免费大全电影| 亚洲精品视频在线| 4455永久在线观免费看| 中文成人久久久久影院免费观看| 亚洲乱色伦图片区小说| 亚洲第一区精品观看| 一区二区三区无码视频免费福利 | 亚洲AV色无码乱码在线观看| 久久精品国产亚洲av麻豆| 日韩免费a级毛片无码a∨| 一级特黄aa毛片免费观看| 亚洲人成网国产最新在线| 亚洲精品成人在线| 免费无遮挡无码永久在线观看视频| 看全免费的一级毛片| 亚洲色无码专区一区| 亚洲va久久久噜噜噜久久天堂| 亚洲国产精品成人网址天堂| 免费a级毛片网站| 日本高清色本免费现在观看| 国偷自产一区二区免费视频| 国产免费人成视频在线播放播| 日韩亚洲翔田千里在线| jzzijzzij在线观看亚洲熟妇| 亚洲国产欧美国产综合一区| 亚洲欧美熟妇综合久久久久| 亚洲午夜福利在线视频| 亚洲精品无码永久在线观看男男| 亚洲中文字幕久久精品无码VA| 亚洲国产激情在线一区| 亚洲AV无码专区电影在线观看| 国产亚洲A∨片在线观看| 久久久久亚洲AV成人无码网站| 亚洲AV第一页国产精品| 亚洲黄色免费网址| 中文字幕专区在线亚洲|