ORA-00001: 违反唯一约束条件(SOLEX.SYS_C0012537) --解决方法

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

 

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值