JdbcTemplate.queryForObject 返回值怎么判断
2014-05-22 16:42
211 查看
org.springframework.dao.EmptyResultDataAccessException: Incorrect result size: expected 1, actual 0
spring做了封装, queryForObject回去数据库查询一条记录,如果没有记录符合查询条件,或者有多条记录符合条件,都会报出错误,
只不过 expected 1, actual 0 意味这没有记录符合这查询条件.
expected 1 可以理解为期望有一条且只有一条符合条件的记录,
actual 0 意味着,没有记录符合.
如果 actual * , * 为 > 1 ,那么也会出错.(这个方法就是这么规定的..)
可以这样写,假设一个简单的表,user.字段有:
id 和 name.
queryForInt(select count(1) as c from user where id = ?)
在结果集中取 c 的值 ,如果大于0,就可以认为有1条或者多条记录.
spring做了封装, queryForObject回去数据库查询一条记录,如果没有记录符合查询条件,或者有多条记录符合条件,都会报出错误,
只不过 expected 1, actual 0 意味这没有记录符合这查询条件.
expected 1 可以理解为期望有一条且只有一条符合条件的记录,
actual 0 意味着,没有记录符合.
如果 actual * , * 为 > 1 ,那么也会出错.(这个方法就是这么规定的..)
可以这样写,假设一个简单的表,user.字段有:
id 和 name.
queryForInt(select count(1) as c from user where id = ?)
在结果集中取 c 的值 ,如果大于0,就可以认为有1条或者多条记录.
相关文章推荐
- Spring中JDBCTemplate使用queryForObject方法时 ”Incorrect column count: expected 1, actual 5“错误
- jdbcTempLate 重写queryForObject错误,防止查询单个失败异常
- 在使用Spring中jdbcTemplate的QueryForObject()方法时异常:EmptyResultDataAccessException
- JdbcTemplate 版本4以上的queryforObject和queryforList的实现
- jdbcTemplate.queryForObject无法返回数据,页面卡住
- 解决调JdbcTemplate的queryForObject抛出EmptyResultDataAccessException异常问题
- 对于JdbcTemplate#queryForObject()的使用
- Spring中的jdbcTemplate.queryForObject()使用
- JdbcTemplate中的queryForMap和queryForObject的异常
- Spring中使用JdbcTemplate的queryForObject方法,当查不到数据时会抛出如下异常:
- 使用JdbcTemplate.queryForObject 的注意点
- 关于【SSI】框架中queryForObject返回值为空或者其他
- Spring中使用JdbcTemplate的queryForObject方法,当查不到数据时会抛出如下异常:
- The method queryForMap(String, Object...) from the type JdbcTemplate refers to the missing type DataAccessException
- jdbcTemplate queryForObject 查询 结果集 数量
- jdbcTemplate.queryForObject 方法注意
- jdbcTemplate.queryForObject使用相关问题
- ibatis queryForObject() 、queryForList()、queryForMap()
- 主线程使用WaitForSingleObject和MsgWaitForMultipleObjects等待线程返回值
- executeQueryForObject returned too many results.