如果Sequence 冲突,需要增加指定的步数。
比如,需要把指定的Sequence 增长10步。如下操作:
--设定步长为10
alter sequence MEMBER_UNIT_INFO_SEQ increment by 10;
--查询seq
select MEMBER_UNIT_INFO_SEQ.nextval from dual;
--设定步长为1
alter sequence MEMBER_UNIT_INFO_SEQ increment by 1;
如果需要把sequence后退,则设定为负数即可,如
--设定步长为10
alter sequence MEMBER_UNIT_INFO_SEQ increment by -10;
--查询seq
select MEMBER_UNIT_INFO_SEQ.nextval from dual;
--设定步长为1
alter sequence MEMBER_UNIT_INFO_SEQ increment by 1;
=======================================================================================
create or replace procedure seq_reset(v_seqname varchar2) as n number(10);
tsql varchar2(100);
begin
execute immediate 'select '||v_seqname||'.nextval from dual' into n;
n:= 10;--增长10步,如果想后退,可以指定为负值如 -10
tsql:='alter sequence '||v_seqname||' increment by '|| n;
execute immediate tsql;
execute immediate 'select '||v_seqname||'.nextval from dual' into n;
tsql:='alter sequence '||v_seqname||' increment by 1';
execute immediate tsql;
end seq_reset;