我知道,有很多关于这个问题的文章,但我仍然不明白为什么我的代码会抛出上面提到的异常。
我正在使用JPA进行数据库连接。
我有以下实体:
/**
* Primary key.
*/
@Id
@Column(name = "ID")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_REGISTRATION")
@SequenceGenerator(name = "SEQ_REGISTRATION", sequenceName = "SEQ_REGISTRATION")
private Long id;据我所知,在序列生成器的情况下,默认值是50。
我创建我的DB表序列如下:
--------------------------------------------------------
sequence for table REGISTRATION
--------------------------------------------------------
CREATE SEQUENCE "SEQ_REGISTRATION" MINVALUE 1 MAXVALUE
9999999999999999999999999999 INCREMENT BY 50 START WITH 1 CACHE 20 NOORDER
NOCYCLE;我还尝试将incrementy_by值设置得更大,但无济于事。
你知道为什么我总是遇到违反约束的异常吗?
提前谢谢你!
发布于 2019-07-12 16:40:38
违反Unique约束将意味着您在数据库中已经存在记录,并且序列被配置为生成已经使用的数字,因为它从1开始计数。
您需要调整“开始于”,使其至少比您当前在数据库中拥有的最大值大1。
https://stackoverflow.com/questions/57002367
复制相似问题