原因:由序列获取的表主键比表中的主键小,导致主键不唯一。
确认原因方法:
可以先看下当前序列生成的值是多少:
select SEQ_C_CSERVICES.NEXTVAL from dual; --a
然后查看数据库里这个字段的最大值是多少
select max(C.主键) from C_CSERVICES C; --b
若b>a,则确认为此原因。
解决方法:
将序列中NEXTVAL改为 (b+1)。可进入 SEQ_CSERVICES.NEXTVAL 直接修改 Next nuber 值即可。