2011-04-14 15 views
0

我需要運行一個使用我在Oracle SQL(10g)數據庫上創建的函數的查詢。如何在Hibernate中使用用戶定義函數完成的是sql(並且仍然有分頁)

  • 我已經看到了Hibernate支持一些聚合函數(AVG,總和,最小值,最大值和某些形式的計數),但我想我自己的功能,所以這是行不通的。

  • 我也看到,我可以使用SQLQuery對象進行直接sql注入。但是在這裏我放鬆了分頁,我真的需要這個。

    任何人都知道如何做到這一點? 在此先感謝!

+1

我現在看到了這個問題 - > [link](http://stackoverflow.com/questions/1909315/how-can-you-call-custom-database-functions-with-hibernate)。真的沒有辦法使用hql或標準嗎? – kotoko 2011-04-14 08:35:56

回答

0

對於HQL查詢,您需要根據您目前使用的(Oracle10gDialect)在Oracle方言創建自己的方言,並添加功能,這種方言。

對於Criteria查詢,您可以定義自己的Criterion實現並在查詢中使用它。此標準負責生成SQL表達式。查看Hibernate源代碼,找到與您想創建的標準實現相似的現有標準實現的示例。

相關問題