sqlserver分页奇怪问题

sqlserver2008,使用Db.paginate方法查询某视图时,出现奇怪问题。

service层代码:

QQ图片20180409154654.png

控制台输出的分页语句,当top后面的值(pageSize)小于256时,查询结果排序正常;一旦pageSize大于256时,排序就失效了。

QQ图片20180409154513.png

超过256排序就乱了

QQ图片20180409155150.png

小于等于256一切正常

QQ图片20180409155219.png


评论区

JFinal

2018-04-09 16:08

配置一下: arp.setShowSql(true) 将 sql 输出到控制台,看 sql 对不对。 sql server 分页用了很多年了,一直是没问题的

升级下 sql server 驱动的 jar 包看看

老高

2018-04-09 16:14

@JFinal 上面的sql语句就是控制台输出的,跟驱动应该没关系,我直接把sql复制到客户端工具调试的。

JFinal

2018-04-09 16:15

@老高 这个 sql 是否正确呢? jfinal 只能保证 sql 是正确的,数据库来的结果是无法控制的

老高

2018-04-09 16:21

@JFinal sql是正确的,截图里都有查询结果了,就是pageSize 大于 256 的时候,排序失效了

JFinal

2018-04-09 16:30

@老高 或许是 sql server 驱动的 bug,升级个驱动试试

老高

2018-04-09 16:32

@JFinal 我估计跟视图有关系,刚我试了普通的表就没这个问题。
现在是查视图出问题了
我再来调试调试吧

热门反馈

扫码入社