生成ID高于特定值

时间:2011-03-22 15:35:00

标签: java mysql hibernate jpa auto-increment

在我的JPA + Hibernate + MySQL应用程序中,我有一个像这样的实体:

@Entity
public class Room {

    @Id
    @GeneratedValue
    private long id;

    // columns....
}

这完全正常,但生成的id值正如预期的那样,1,2,3等。但是,用户将看到此ID,并且客户端希望id更长(因为他找到了它)从应用程序发布之日开始看起来更好。

如何更改Hibernate或MySQL的ID生成(我不知道现在实际上是谁),以便ID始终高于某个值,例如亿?

3 个答案:

答案 0 :(得分:1)

有多种方法。例如,您可以创建自定义hibernate生成器。但最简单的方法是简单地告诉MySQL从哪里开始计数:

ALTER TABLE tbl AUTO_INCREMENT = 100000;

答案 1 :(得分:1)

没有策略的

生成的值默认为“AUTO”,这意味着数据库提供了id值。您需要在MYSQL中为该列提供种子以提供正确的值

答案 2 :(得分:0)

ALTER TABLE tbl AUTO_INCREMENT = 100000;

那应该有用。虽然是纯粹的美容变化,但您应该在输出(和输入)上更改它,以便数据不会被PHB-syndrome

损坏