当遇到主键跟序列值不匹配的情况,通过以下语句修改序列值
--得到maxid
select max(r.id) maxid from test r;
--得到currentSeq
select seq_test .nextval currentSeq from dual;
--替换x为maxid与currentSeq的差值
alter sequence seq_test increment by x;
--执行一次
select seq_test .nextval from dual;
-- 再将序列的自增值修改回去
alter sequence seq_test increment by 1;
本文详细阐述了如何在遇到主键与序列值不匹配时,通过SQL语句更新序列值,包括获取最大ID、获取当前序列值、计算调整量并应用到序列,以及后续的序列值恢复步骤。

9836

被折叠的 条评论
为什么被折叠?



