TooManyResultsException

本文探讨了在Service层中,通过attr_Id查询数据库表时遇到的TooManyResultsException异常,原因在于查询到了两行数据,针对这种情况,如何避免并解决这一问题,包括代码示例和问题分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库表

attr_id值为20的有两行数据

if (attrRespVo.getAttrType() == ProductAttrTypeEnum.ATTR_TYPE_BASE.getCode()) {
                       //根据attrId查询attr_Gruop_id在查询groupName
                       AttrAttrgroupRelationEntity entity = attrAttrgroupRelationDao.
                               selectOne(new QueryWrapper<AttrAttrgroupRelationEntity>().eq("attr_id", attrRespVo.getAttrId()));
                       if (entity != null && entity.getAttrGroupId() != null) {
                           AttrGroupEntity attrGroupEntity = attrGroupDao.selectById(entity.getAttrGroupId());
                           attrRespVo.setGroupName(attrGroupEntity.getAttrGroupName());
                       }
                   }

在service中,根据attr_Id查询AttrAttrgroupRelationEntity实体类时,查出来两个实体类,也就是数据库中对应那两行数据,所以就报了TooManyResultsException.

总结:TooManyResultsException是由于从数据库表中查出多条数据所导致。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值