【问题标题】:Change default name for OPENJPA_SEQUENCE_TABLE更改 OPENJPA_SEQUENCE_TABLE 的默认名称
【发布时间】:2018-08-22 21:16:47
【问题描述】:

我正在使用序列生成类型。我想为序列生成表使用另一个名称。 OPENJPA_SEQUENCE_TABLE。如何覆盖默认名称?我找不到可以在 persistence.xml 文件中设置的属性。

【问题讨论】:

  • 定义你的注解/XML 来使用它。是策略 = 表吗?还是序列?还是什么?
  • 如果这是一个 TABLE 策略,那么您可以使用 @TableGenerator 定义此类内容,但除非您定义了您所拥有的配置,否则它不可能精确
  • 我正在使用序列生成类型
  • 如果 RDBMS 支持 SEQUENCE,那么它将不会在任何地方使用任何 TABLE 来支持它。如果 RDBMS 不支持 SEQUENCE 并且您指定了 SEQUENCE,那么它应该抛出异常。因此,请提供有关它是什么 RDBMS 的详细信息(在您的问题中),发布课程和日志

标签: jpa jakarta-ee openjpa


【解决方案1】:

我只是假设您使用带注释的实体类。为此,您可以使用 @SequenceGenerator 定义序列生成器的名称,如下所示:

@Entity
@Table(name = "YOUR_TABLE")
@SequenceGenerator(initialValue = 1,
        allocationSize = 1,
        name = "YOUR_SQUENCE_NAME",
        sequenceName = "YOUR_SQUENCE_NAME")
public class YourTable implements java.io.Serializable {

    @Id
    @GeneratedValue(generator = "YOUR_SQUENCE_NAME")
    @Column(name = "ID")
    private Integer id;
}

【讨论】:

  • 但这不是“序列表”。它是一个序列,一个数据存储序列。
  • 好吧,我只是想给个提示,因为他的 JPA 是如何完成的并不完全清楚。
  • 我正在使用序列生成类型
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-07-24
  • 2018-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-06
  • 2013-07-24
相关资源
最近更新 更多