程序报错: nested exception is org.apache.ibatis.exceptions.TooManyResultsException:Expected one result

目录

问题复现

报错原因

解决方法

1.方法一:

2.方法二:

3.方法三:


问题复现

报错信息:

nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2

报错信息的大致意思:过多的结果值异常:只希望得到一个结果,但发现了2个

看我们的sql怎么写的:

很明显我们要的是一条但是返回的结果却是多条所以导致这个问题的出现

报错原因

报错的原因是因为我们的sql语句查询出多条返回结果,但是我们的代码中只需要一条返回结果,所以导致这个问题出现

解决方法

1.方法一:

在我们的sql语句中添加查询条件使得我们的返回数据为一条范湖结果

2.方法二:

返回值还是为一个对象时,将返回的数量做限制

SELECT
	*
FROM
	sggp_gwss_document o
	JOIN sggp_document_approve p ON o.id = p.document_id 
WHERE
	o.id = 1
	LIMIT 1

误区: 使用"limit"关键字要判定我们limit后的判定条数是我们想要返回的数据吗,因为有时会发生我们读取数据异常,所以这个我们要谨慎使用

3.方法三:

将我们返回的数据结果用一个集合(List)来接收

解释:如果我们用集合来接收返回值,我们需要解析集合来找到我们需要的数据

  • 11
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
org.apache.ibatis.exceptions.TooManyResultsException是mybatis框架中的一个异常,它表示期望返回一个结果(或者为空),但实际查询到了两个或多个结果。这个异常通常在使用selectOne()方法时发生,该方法用于查询单个结果。 具体地说,当我们使用selectOne()方法时,mybatis期望我们的查询只返回一个结果或者为空。但如果查询结果中出现了多个匹配项,就会触发这个异常。这可能是因为数据库中有重复的数据,导致了多个匹配项的出现。 这个异常的出现可以帮助我们发现数据表中的问题,比如重复的数据或者查询条件不准确。为了解决这个异常,我们可以使用其他查询方法,如selectList()方法,来获取多个结果并进行处理。或者我们可以检查数据表中的唯一性约束,确保查询结果不会出现重复的情况。 总结来说,org.apache.ibatis.exceptions.TooManyResultsException是mybatis中的异常,表示期望只返回一个结果,但实际查询到了两个或多个结果。我们可以通过检查数据表中的唯一性约束或使用其他查询方法来解决这个异常。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [ nested exception is org.apache.ibatis.exceptions.TooManyResultsException:Expected one result](https://blog.csdn.net/m0_61682705/article/details/125029333)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to ..](https://blog.csdn.net/ccc_mmm/article/details/121952603)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值