【问题标题】:What am I missing within my @TableGenerator?我的@TableGenerator 中缺少什么?
【发布时间】:2016-07-27 02:46:15
【问题描述】:

我就是这样做的。

@Basic(optional = false)
@Column(name = "ID", nullable = false, updatable = false)
@Id
@GeneratedValue(generator = "GLOBAL",
                strategy = GenerationType.TABLE)
@TableGenerator(
        allocationSize = 1048576,
        initialValue = Integer.MAX_VALUE,
        pkColumnName = "PK",
        valueColumnName = "VL",
        table = "GENERATED_ID",
        name = "GLOBAL",
        pkColumnValue = "GLOBAL"
)
@NotNull
@XmlAttribute
private Long id;

现在,当我尝试持久化一个实体时,我得到了。

Exception Description: Error preallocating sequence numbers.
The sequence table information is not complete.

我的@TableGenerator 中遗漏了哪些元素?

该表存在,当我手动插入该行时,我发现它可以正常工作。这正常吗?

INSERT INTO GENERATED_ID ("PK", "VL") VALUES ("GLOBAL", 1);

是否有任何标准(供应商中立)属性可以自动执行此操作?

【问题讨论】:

    标签: jpa glassfish eclipselink payara


    【解决方案1】:

    有时当您更改persistence.xml 时会发生这种情况。检查您的持久性单元中是否有“eclipselink.ddl-generation”的值 设置为“创建表”。

    <property name="eclipselink.ddl-generation" value="create-tables" />
    

    【讨论】:

      猜你喜欢
      • 2011-07-12
      • 1970-01-01
      • 1970-01-01
      • 2011-01-29
      • 1970-01-01
      • 2012-10-01
      • 2010-10-29
      • 2011-03-24
      相关资源
      最近更新 更多