gpt4 book ai didi

hibernate - 用于存储库中 native 查询的Spring Data JPA默认架构

转载 作者:行者123 更新时间:2023-12-01 09:50:28 24 4
gpt4 key购买 nike

我在Spring Boot Application中使用Spring-dat-jpa,并尝试在存储库中执行 native 查询。当我在表名称后附加模式名称时,它可以正常工作,但它不能独立工作,并且不会像我定义的实体类那样从application.properties文件中选择模式名称

我正在使用下面的属性来设置默认架构,它适用于实体类和命名查询。但是,当我在@query中编写任何 native 查询时,它开始提示架构名称:

spring.jpa.properties.hibernate.default_schema=NPS_WO

以下是我的查询:
@Repository
public interface TestRepository extends JpaRepository<TypeRef,Long> {


@Query(value="SELECT t.* from Type_Ref t")
public List<Object[]> findAllTypes();

}

在我的实际情况中,此查询将由复杂的 native 查询代替。

任何帮助将不胜感激。

最佳答案

您可以使用{h-schema}在 native 查询中访问默认架构名称。

因此,您的查询应如下所示:

@Query(value="SELECT t.* from {h-schema}Type_Ref t")
public List<Object[]> findAllTypes();

h模式与表名称之间没有点,这是自动添加的。

关于hibernate - 用于存储库中 native 查询的Spring Data JPA默认架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38771731/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com