我試圖執行以下HQL語句獲取:Hibernate的HQL加入與構造
queryString = "select new DossierAccount(dossier,dossierAccount.accountNumber) from DossierAccount as dossierAccount join fetch dossierAccount.dossier as dossier" +
" where dossier.kycId.id != :kycId and dossierAccount.accountNumber in :accountNumbers";
這導致org.hibernate.QueryException: query specified join fetching, but the owner of the fetched association was not present in the select list
例外。當我刪除「獲取」它的作品。然而,DossierAccount和Dossier之間的關聯被指定爲「懶惰」,我不想改變它。但在這種特殊情況下,我需要急切地加載檔案。
它也適用,當我用變量「accountNumber」替換構造函數調用。但是我需要減少這裏所選屬性的數量。
有沒有辦法在select語句中使用嵌入式構造函數調用?
還有一個問題:我還需要限制加入的Dossier的選定屬性的數量。有沒有辦法做到這一點?
當你刪除'fetch'並保持關聯'LAZY'時會發生什麼? – Tobb
相關檔案未加載,但我需要它在這種情況下 – thmayr
什麼是未加載的意思,是否沒有提供給DossierAccount的值? – Tobb