提问者:小点点

主键列不自动递增


如何正确进行自动增量?

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="userid", updatable=false, nullable=false)
private Integer userid;

当我使用列上的注释创建数据库时,我遇到了Hibernate注释的问题。问题是当我插入一行时,数据库不会自动增加用户ID列。这会引发错误。


共2个答案

匿名用户

@GeneratedValue(strategy = GenerationType.IDENTITY)

是的,我找到了答案。

匿名用户

Hibernate支持不同的策略来生成pk值。其中之一是使用自动递增数据库列的身份策略。

如果需要按照这种方式,则需要将pk属性@Id注释,并将@GeneratedValue注释和策略作为GenerationType. IDENTITY。

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "userid", updatable = false, nullable = false)
private Integer userid;