java - executeQueryForObject returned too many results

查看:123
本文介绍了java - executeQueryForObject returned too many results的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

有一个SQL:

select coalesce(count(1),0) from table where searchDt=#searchDt#

ibatis Dao层是这么写的:

public Integer findCount(String searchDt) throws SQLException {
    return (Integer)this.get().queryForObject("xxxxx",searchDt);
}

现在提示错误:

java.sql.SQLException: Error: executeQueryForObject returned too many results.
    at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryForObject(GeneralStatement.java:108)
    at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapExecutorDelegate.java:566)
    at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapExecutorDelegate.java:541)
    at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForObject(SqlMapSessionImpl.java:106)
    at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForObject(SqlMapClientImpl.java:83)
    at com.boco.monitor.dao.xxxxDao.findCount(xxxxDao.java:112)
    at com.boco.monitor.service.xxxxService.xxxxAnalysis(xxxxService.java:882)
    at com.boco.monitor.task.Task.run(Task.java:35)
    at java.util.TimerThread.mainLoop(Timer.java:555)
    at java.util.TimerThread.run(Timer.java:505)

奇了怪了,这SQL打死也不能查出多条结果啊?

解决方案

确认一下传入的参数searchDt名字和值有没有问题

  • 列表项目

这篇关于java - executeQueryForObject returned too many results的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆