http://expert.csdn.net/Expert/topic/1188/1188814.xml?temp=.4779169

解决方案 »

  1.   

    ORACLE中如何实现自增字段:(1)第一种方法 
    ORACLE一般的做法是同时使用序列和触发器来生成一个自增字段.
    CREATE SEQUENCE SEQname
     INCREMENT BY  1
     START WITH  1
     MAXVALUE  99999999
    /
    CREATE TRIGGER TRGname
    BEFORE  INSERT  ON table_name
    REFERENCING
     NEW AS :NEW
    FOR EACH ROW
    Begin
       SELECT SEQname.NEXTVAL
         INTO :NEW.FIELDname
         FROM DUAL;
    End;(2)第二种方法:
    CREATE OR REPLACE TRIGGER TR1
      BEFORE INSERT ON temp_table
      FOR EACH ROW
    declare 
    com_num NUMBER;
    BEGIN
    SELECT MAX(ID) INTO COM_NUM FROM TEMP_TABLE; 
    :NEW.ID:=COM_NUM+1;
    END TR1;