【问题标题】:How to use in hibernate user-defined-function done is sql (and still have pagination)如何在休眠用户定义函数中使用完成的是sql(并且仍然有分页)
【发布时间】:2011-08-05 08:27:41
【问题描述】:

我需要运行一个使用我在 Oracle SQL(10g) 数据库上创建的函数的查询。

  • 我看到 Hibernate 支持一些聚合函数(avg、sum、min、max 和某些形式的计数),但我想要我自己的函数,所以这不起作用。

  • 我还看到我可以使用 SQLQuery 对象进行直接 sql 注入。但是在这里我失去了分页,我真的需要这个。

    有人知道怎么做吗? 提前致谢!

【问题讨论】:

  • 我现在看到了这个问题 -> link。真的没有办法使用hql或者criteria吗?

标签: sql hibernate pagination hql user-defined-functions


【解决方案1】:

对于 HQL 查询,您需要根据您当前使用的 Oracle 方言(Oracle10gDialect)创建自己的方言,并将您的函数添加到该方言中。

对于 Criteria 查询,您可以定义自己的 Criterion 实现并在查询中使用它。此 Criterion 负责 SQL 表达式的生成。查看 Hibernate 源代码,找到与您要创建的标准类似的现有标准实现示例。

【讨论】:

    猜你喜欢
    • 2019-02-10
    • 2020-12-16
    • 1970-01-01
    • 2015-11-07
    • 2019-09-02
    • 2014-04-27
    • 1970-01-01
    • 2017-01-23
    • 2019-02-23
    相关资源
    最近更新 更多