簡體   English   中英

如何使用@Query注解

[英]How to use @Query annotation

我正在嘗試使用 @Query 在我的 jpa 存儲庫中創建自定義方法,但在運行時出現以下錯誤,請幫我檢查一下。 提前致謝

下面是代碼

public interface OrganizationRepository extends JpaRepository<Organization, Long> {
        
    List<Organization> findByDeleted(Boolean isDeleted);
    
    List<Organization> findAllByDeletedOrderById(Boolean isDeleted);

    @Query(value="SELECT * FROM ORGANIZATION WHERE id = :organizationId AND NAME LIKE %:organizationId% LIMIT 1 ", nativeQuery = true)
    Organization findFirstNameByNameLike(@Param("organizationId") Long organizationId, @Param("name") String name);
    
}

下面是運行時錯誤

Caused by: java.lang.IllegalStateException: Using named parameters for method public abstract com.oasis.firsbacklogbackend.entity.Organization com.oasis.firsbacklogbackend.repository.OrganizationRepository.findFirstNameByNameLike(java.lang.Long,java.lang.String) but parameter 'Optional[name]' not found in annotated query 'SELECT * FROM ORGANIZATION WHERE id = :organizationId AND NAME LIKE %:organizationId% LIMIT 1 '!

我將不勝感激任何幫助

您使用了兩次組織標識而不是名稱。 像這樣:

@Query(value="SELECT * FROM ORGANIZATION WHERE id = :organizationId AND NAME LIKE %:name% LIMIT 1 ", nativeQuery = true)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM