【问题标题】:Access sequence from another schema in JPAJPA 中另一个模式的访问序列
【发布时间】:2018-07-17 14:58:31
【问题描述】:

我在 2 个方案中定义了“master_seq”。我在 schema_2 中有一个表,比如 table_2。 Schema_1 已在 table_2 及其 master_seq 上提供插入授权。问题是,我试图从 schema_1 (从我正在运行的 spring boot 应用程序)中插入一条记录,它使用的是 schema_1 的 master_seq,而我希望它应该使用 schema_2 的 master_seq。

简而言之,我想使用表所在架构的master_seq。

下面是代码示例:

    @Id
    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="MASTER_SEQ")


@SequenceGenerator(name="MASTER_SEQ",sequenceName="MASTER_SEQ",allocationSize=1)
            public Long getId() {
                return id;
            }

我是否需要以某种方式在代码中使用另一个模式名称?但是架构名称会根据不同的环境不断变化。

提前致谢

【问题讨论】:

    标签: java database jpa


    【解决方案1】:

    您可以尝试通过将模式名称附加到序列名称来访问序列:

    @SequenceGenerator(name="MASTER_SEQ",sequenceName="schema_2.MASTER_SEQ",allocationSize=1)
    

    【讨论】:

      猜你喜欢
      • 2020-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-07
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      相关资源
      最近更新 更多