Oracle 如何强制Hibernate以自定义增量生成序列
我将Hibernate 4.3.8与JPA 2.1一起使用,并通过顺序自动生成ID:Oracle 如何强制Hibernate以自定义增量生成序列,oracle,hibernate,jpa,ddl,Oracle,Hibernate,Jpa,Ddl,我将Hibernate 4.3.8与JPA 2.1一起使用,并通过顺序自动生成ID: @Id @Column(name = "ID") @GeneratedValue(strategy = GenerationType.AUTO, generator = "t_gen") @SequenceGenerator(name = "t_gen", sequenceName = "T_SEQ", initialValue = 1, allocationSize = 50) priva
@Id
@Column(name = "ID")
@GeneratedValue(strategy = GenerationType.AUTO, generator = "t_gen")
@SequenceGenerator(name = "t_gen", sequenceName = "T_SEQ", initialValue = 1, allocationSize = 50)
private long id;
不幸的是,Hibernate为ORACLE生成了以下DDL:
create sequence T_SEQ;
但我需要增加50,看。我怎样才能做到这一点
编辑:
我需要强制Hibernate在其生成的DDL中使用自定义自动增量生成这样的序列。您必须在ORACLE数据库中创建序列: sql>create sequence T_SEQ递增50强> 并在@SequenceGenerator中指定序列名称: @SequenceGenerator(name=“t\u gen”,sequenceName=“t\u SEQ”) 我希望它能很好地工作。
谢谢。在我看来,目前不可能做到这一点。它与这个Hibernate bug有关。这是可行的,但我需要Hibernate自动生成DDL。
sql>create sequence T_SEQ
NOMAXvalue
start with 1
increment by 50
nocache
order;