create sequeence seq_test start with 5 
insert into tablename values(value1,seq_test.nextval)

解决方案 »

  1.   

    先作update tb set 序号=序号+1 where 序号>=2
    然后insert into tb values(code,2)
      

  2.   

    思路1:使用序列
    创建序列:
     CREATE SEQUENCE seq_name
      INCREMENT BY 1
      START WITH 1
      MINVALUE 1
      MAXVALUE 999999999
      CYCLE
      NOORDER
      CACHE 50
     /
    使用序列:
    SELECT LTRIM(TO_CHAR(seq_name.NEXTVAL,'000000000')) INTO v_var FROM DUAL;思路2: 建一张表id_tb存储 最大序号
    插入数据时 
    SELECT ID INTO V_ID FROM ID_TB WHERE ROWNUM = 1 FOR UPDATE;
    INSERT INTO TABLE_NAME(ID,...) VALUES(V_ID,...);
    UPDATE SET ID_TB ID = ID+1;
    COMMIT;
      

  3.   

    update tab set 序号=序号+1 where 序号>=2;
    insert into tb values(code,2);
      

  4.   

    sequence 里面 cache 什么用的?