我想就 Hibernate 创建的数据库序列寻求一些帮助。
我在我的实体类中有这个注释 - 下面的代码 - 以便为合作伙伴表提供单独的序列。我希望序列以 1000 开头,因为我在部署期间使用 import.sql 将测试数据插入到我的数据库中,并且我想避免违反约束。但是当我想要持久化数据时,我得到了约束违反异常,它告诉我 partner_id = 2 已经存在的事实。看来我错过了什么。
@Id
@Column(name = "partner_id")
@SequenceGenerator(initialValue=1000,
allocationSize=1,
name = "partner_sequence",
sequenceName="partner_sequence")
@GeneratedValue(generator="partner_sequence")
private Long partnerId;
生成的序列如下所示:
CREATE SEQUENCE partner_sequence
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 1
CACHE 1;
ALTER TABLE partner_sequence
OWNER TO postgres;
我使用postgres 9.1。
我错过了什么?这就是我如何接近我想要的方式?
提前感谢您的帮助!