select ss.*,concat( concat( 'alter sequence '||ss.sequence_name||' increment by '||ss.incrementNum||';'||chr(10),
'select '||ss.sequence_name||'.nextval from dual;'||chr(10)), 'alter sequence '||ss.sequence_name||' increment by '||ss.increment_by||';') as 序列更新需要执行的sql语句
from
(
-- 异常序列查询sql
select s.sequence_name,s.last_number,m.maxId,(m.maxId+1-s.last_number) incrementNum,s.increment_by from user_sequences s,
(
select 'SEQ_SYSTEM_ID' as seqName,max(ID_SYSTEM) as maxId from R_SYSTEM
union select 'SEQ_R_USER' as seqName,max(ID_USER) as maxId from R_USER
-- union select '你的序列名' as seqName,max(你使用该序列的主键) as maxId from R_USER
) m
where sequence_name=m.seqName and s.last_number<=m.maxId
) ss;