oracle sequence 删除与重建

2025-10-04 19:13:55

1、删除序列

--删除序列,如果存在则删除,如果不判断会报错

declare 

      num   number; 

begin 

select  count(1) into  num  from  user_sequences  where  sequence_name= 'SQ_Name'; 

      if   num=1   then 

          execute immediate 'drop SEQUENCE SQ_Name'; 

      end   if;

end; 

2、创建序列

DECLARE  

s_ID NUMBER;

BEGIN

select MAX(RECID)+1 into s_ID from S_TableName;--序列起始号获得,某列的最大值+1

EXECUTE immediate 'create sequence SQ_SequName minvalue 1 maxvalue 9999999999999999999999999999 start with '||s_ID||'increment by 1 cache 200';

END;

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢