休眠:表生成器在表中插入负主键 [英] Hibernate: Table generator inserting negative primary keys in table

查看:67
本文介绍了休眠:表生成器在表中插入负主键的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用表生成器策略来生成主键.最近,我升级到了Hibernate 5,并且遇到主键生成负值的问题.数据库:PostgreSQL 9.3,Hibernate 5.0.2

I am using Table Generator strategy for generating primary keys. Recently I upgraded to Hibernate 5 and i am getting issue of primary keys getting generated negative values. Database: PostgreSQL 9.3, Hibernate 5.0.2

这是我的注释的样子.

@Id
@TableGenerator(name = "EMP_ID",
                table = "ID_GENERATOR",
                pkColumnName = "GEN_KEY",
                valueColumnName = "GEN_VALUE",
                pkColumnValue = "EMP_ID",
                allocationSize = 10,
                initialValue = 1)
@GeneratedValue(strategy = GenerationType.TABLE, generator = "EMP_ID")
@Column(name = "EMP_ID", unique = true, nullable = false)
private long empId;

有人可以在这里帮助我吗?

Can someone please help me out here?

推荐答案

检查数据库中的GEN_VALUE是否小于实体类中的initialValue属性,则产生此问题,例如:

Check if GEN_VALUE in database is less than initialValue property in the entity class generate this issue, for example:

如果列值GEN_VALUE为0且initialValue为1,则生成负值.要解决此问题,请将initialValue与GEN_VALUE相等.

If the column value GEN_VALUE is 0 and initialValue is 1, it generates negative value. To Solve the issue, equal initialValue with GEN_VALUE.

此致

这篇关于休眠:表生成器在表中插入负主键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆