在HIBERNATE里投影查詢數據
在數據庫中我們經常會用到類似這樣的sql語句:SELECT A,B,C FROM TABLE_A,在HIBERNATE里實現起來相比較而然,稍微復雜了一點。在HIBERNATE里語句應當這么來寫:SELECT tableA.a,tableA.b,tableA.c FROM tableA
tableA-----------表TABLE_A對應的HIBERNATE的類名
a,b,c-------------表TABLE_A里的三個列名對應的HIBERNATE的類的幾個屬性
最后便是取出查詢的數據,整個返回值為Iterator,一行數據就是一個Object[]數組,數組里的每個變量對應tableA.a,tableA.b,tableA.c 的順序取出此行該列的數據值,然后根據tableA.a,tableA.b,tableA.c 在類里的類型在對其進行相應的強制類型轉換。
但是在我測試時如果在語句中FROM之前用到一些類似TO_CHAR,DECODE的函數則就會報錯,提示沒有該列,也不能像tableA.a AS TP這樣來寫。如果有解決這種情況出現的問題的,請告知。
posted on 2005-10-25 14:57 十三郎 閱讀(1567) 評論(1) 編輯 收藏 所屬分類: HIBERNATE