zoukankan      html  css  js  c++  java
  • Oracle 自动增长列

    以前一直使用的SQL SERVER数据库,他本身就提供了自动增长的功能,但在Oracle就没有了,在网上找一些资料,还是让我给搞定了。

    Oracle中创建自动增长主要有两部分:1,创建序列(取得增长的数据),2,创建存储过程(保存自动执行序列)

    1,创建序列

    CREATE SEQUENCE my_seq          ----以my_seq为名创建序列
    START WITH 1                  ----从1开始递增,可以是其他数字
    INCREMENT BY 1                   ----步进为1
    MAXVALUE 99999999999 [NOMAXVALUE]  ----递增的最大值,NOMAXVALUE没有最大值
    NOCYCLE                   ----CYCLE在有最大值时,达到最大值99999999999后循环从1开始再次递增,NOCYCLE不循环
    CACHE 20                  ----缓存,默认为20
    NOORDER;                   ----还没明白这个是干什么的,不过暂时可有可无的

    2,创建存储过程

    CREATE TRIGGER my_trigger BEFORE INSERT ON table_name FOR EACH ROW
    BEGIN SELECT my_seq.NEXTVAL INTO :NEW.column_name FROM DUAL;
    END;

    这样就完成了,在插入的时候就column_name字段就可以自动增长了。

    触发器参考:http://www.cnblogs.com/huyong/archive/2011/04/27/2030466.html

  • 相关阅读:
    周总结9
    TDtree冲刺第十天
    规划极限编程阅读笔记03
    TDtree冲刺第九天
    TDtree第八天
    规划极限编程阅读笔记02
    TDtree冲刺第七天
    周总结8
    TDtree冲刺第六天
    11/1
  • 原文地址:https://www.cnblogs.com/zjking99/p/2108649.html
Copyright © 2011-2022 走看看