簡體   English   中英

為什么 Hibernate 拋出無效列異常? 我的查詢在 Oracle 中運行良好,但在 Java 代碼中拋出異常

[英]Why is Hibernate throwing an invalid column exception? My query runs well in Oracle, but throws an exception in Java code

常量.java

 public static  final String A=" SELECT  name as teamName,location as bookingLoc FROM table where emp_ps_id = :empPSID and rownum<2" ;

 public static  final String A=" SELECT  name as team,location as booking FROM table where emp_ps_id = :empPSID and rownum<2" ;

如果我將這些查詢與 Hibernate 一起使用,第一個會拋出invalid column name exception ,第二個會產生正確的結果。

 public Details getDetails(final String psid) {
        final String finalQuery = Constants.A;
        return (Details) entityManager.createNativeQuery(finalQuery, Details.class)
                .setParameter("empPSID", psid)
                .getSingleResult();
    }

由於沒有給出顯式查詢映射, 隱式映射正在發生,因此查詢中的別名和類型(那些在as teamName之后的)需要對應於結果 class Details上的字段。

同步查詢和結果 class 之間的別名和類型將解決此問題。 請注意,結果 class 中的每個字段都需要由查詢傳遞。

暫無
暫無

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

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