如题 谢谢!

解决方案 »

  1.   

    sequence 具体怎么用啊 是在表结构定义时做吗
      

  2.   

    sequence是单独使用的 如
    create sequence s_1
    increment by 1
    start with 1
    nomaxvalue
    minvalue 1;插入数据时
    insert into table1
    select s_1.nextval from dual;
      

  3.   

    oracle没有数据库自动增长的定义,只能用sequence
      

  4.   

    sequence+trigger正好有现成例子DROP SEQUENCE TEST.SEQ_STUDENT_ID;CREATE SEQUENCE SEQ_STUDENT_ID
      START WITH 5
      MAXVALUE 1E27
      MINVALUE 0
      NOCYCLE
      NOCACHE
      NOORDER;CREATE TABLE STUDENT_INFO
    (
      ID        NUMBER                              NOT NULL,
      NAME      VARCHAR2(50 BYTE),
      SEX       VARCHAR2(10 BYTE),
      AGE       NUMBER,
      BIRTHDAY  DATE,
      PHONE     VARCHAR2(20 BYTE)
    )
    CREATE OR REPLACE TRIGGER TG_STUDENT_INFO
    BEFORE INSERT ON STUDENT_INFO
    REFERENCING OLD AS old NEW AS new
    FOR EACH ROW
    BEGIN
      IF :new.ID IS NULL THEN
        SELECT SEQ_STUDENT_ID.NEXTVAL
        INTO   :new.ID
        FROM   dual;
      END IF;
    END;