首页 > 解决方案 > Hibernate DB2 方言分页问题

问题描述

我们正在使用带有 Hibernate Db2 Dialect 的 DB2 数据库,它不适用于服务器端分页。它适用于第一页,但不适用于其他页面。

我收到此错误信息的原因是:

com.ibm.db2.jcc.am.SqlSyntaxErrorException:DB2 SQL 错误:SQLCODE=-199,SQLSTATE=42601,SQLERRMC=OF;(。在微秒微秒秒,驱动器=4.19.26

我们正在使用带有 JPA 2.1 版本的 Hibernate 5。我们正在使用 orderby 标准,它会生成如下所示的 hql 查询

select * from 
( select inner2_.*, rownumber() over(order by order of inner2_) as rownumber_ 
from
( select id as id_,name as name_ from employee as employee_ where employee_.name="employee1" order by employee_.id fetch first 2 rows only ) 
as inner2_) 
as inner1_  where rownumber_ > 1 order by rownumber_;

我用 SQLServer 尝试了相同的查询,它没有任何问题。

标签: hibernatedb2dialect

解决方案


推荐阅读