在本机查询中将模式名称作为参数传递

时间:2019-08-12 10:53:00

标签: java hibernate spring-boot jpa

我有以下两个查询,它们总共在不同的架构上运行 以下是查询:

select abccode from abc_first.table_configurations_name;

select abccode from abc_sec.table_configurations_name;

对于第一个查询,模式为abc_first,对于第二个查询,模式为abc_sec现在,我必须在JPA中编写参数化查询,而参数我将获取模式名称和按照该架构名称,我将执行以该架构名称为前缀的查询

select abccode from {schema-name}.tablename ;

请告知如何使用Spring Boot JPA来实现。

1 个答案:

答案 0 :(得分:0)

您可以使用实体管理器来创建如下查询:

...

@PersistenceContext
private EntityManager entityManager;

public someMethod(String databaseName, String schemaName) {
    this.entityManager.createNativeQuery("select abccode from" + databaseName + "." + schemaName + ".tablename");
}