菜鸟求教:在使用jfinal paginate分页时,带or的sql查询结果不对是怎么回事?

云的小枕头 发布于 2016/06/27 09:38
阅读 516
收藏 0

sqly语句如下

Sql: select distinct t.*,u.realname as creater_name from ht_contracts t left join sso_person u on t.creater_id=u.id left join wf  on wf.id=t.id where  (wf.auditor_id = '0001'  or t.auditor_id like '%0001%' or t.creater_id='0001' ) and t.audit_status >1 desc limit 50 offset 0

我在数据库里直接查询是有结果出来的,但是我在程序里调用paginate分页时,查询结果居然为空。。。。,,,,这 是怎么回事??


加载中
0
月生无界
月生无界
目测,参数传错,在项目中,将完整的sql打印出来,然后拉到sql中运行,就可以知道问题了,当然也不排除你代码写错了,断点慢慢调呗,目测用的是pgSql
云的小枕头
....,,,然后我又去原来的paginate,,,原先是用?代替的,,然后我把?全部换成0001,坑爹的,居然正常了。。。看样子是我传入的值有问题,,,,,,,,
0
jinyanjun
jinyanjun
看一下你的参数传对了吗 最后limit 可能错了
0
JFinal
JFinal

   先改 paginate 为 find 方法,看看有没有数据,如果没有数据那么可以确定是 jdbc 对此 sql 的处理就是没有数据,因为 find 方法是直接将 sql 扔给了 jdbc,没做任何干预。 

     paginate 方法稍稍有点干预,所以改为 find 方法更有利于确定错误。

云的小枕头
我用find可以查询出结果集,,,,
0
云的小枕头

最后就把分页改了,改成find来做了,谢谢各位!

返回顶部
顶部