1、错误
Caused by: java.sql.BatchUpdateException:ORA-00001: 违反唯一约束条件 (SOLEX.SYS_C0012537)
2、分析
①通过SYS_C0012537找到对应的表
select a.constraint_name,a.constraint_type,b.column_name,b.table_name
from user_constraints a inner join user_cons_columns b on a.table_name=b.table_name
where a.constraint_name='SYS_C0012537' --引号里面的是主键的名称(SOLEX.SYS_C0012537)
②同hbm.xml文件找到主键的自增序列名称
SEQ_FEEPAY_COST_D
③到数据库序列sequences查找该序列名称:SEQ_FEEPAY_COST_D,然后修改下一个ID的值
或者select SEQ_FEEPAY_COST_D.nextval as summaryId from dual c 一直增序列,排除掉重复的
3.若数据库中该字段已经设置可为空,但插入的时候还是出现这个错误,最后把Check constraints中该字段关了(disable)就可以了。
原文1.2:https://blog.csdn.net/beinlife/article/details/76180156
原文3:https://blog.csdn.net/hellolib/article/details/13769831
转载自原文链接, 如需删除请联系管理员。
原文链接:ORA-00001: 违反唯一约束条件(SOLEX.SYS_C0012537) --解决方法,转载请注明来源!