oracle数据库表中某自段如何设置为自增字段呢?谢谢各位高手了,刚用ORACLE,所以不懂,请高手指点啊!

解决方案 »

  1.   

    我们一般都是创建一个sequence
      

  2.   

    使用自增列是MSSQL的习惯,在Oracle中通常用sequence对象来获取序列号。
    但是两者有一定区别。sequence的性能自然是顶呱呱,使用也很简便,但是无法保证序号的连续性。
    如果你非得实现和MSSQL一样的功能,建议写一个触发器。
      

  3.   

    保证序号的连续性可以为一张表的某个字段创建一个sequence,只有它调用
      

  4.   

    sequence+触发器
    oracle 没提供自增字段的
      

  5.   

    先建序列,然后建立一个触发器实现!
    cata0是表名,cata0_id是需要自增的字段!
    CREATE SEQUENCE SEQ_cata0
     INCREMENT BY  1
     START WITH  1
     MAXVALUE  9999999CREATE TRIGGER TRG_cata0 BEFORE
    INSERT  ON cata0
    FOR EACH ROW begin
       SELECT SEQ_cata0.NEXTVAL
         INTO :NEW.cata0_ID
         FROM DUAL;
    End TRG_cata0;