MyBatis执行SQL返回0,SQL语句在数据库正常返回数据,Toal- 0

MyBatis执行SQL返回0,SQL语句在数据库正常返回数据,Toal- 0问题 只是执行一个简单的 SQL 语句 但是却无法正常返回数据库中的数据 传递的参数 roleid 是用 拼接起来的 6 2 Mapper xml select id selectByCond resultmap BaseResultMa select

大家好,我是讯享网,很高兴认识大家。

问题:只是执行一个简单的SQL语句,但是却无法正常返回数据库中的数据。

传递的参数roleid是用","拼接起来的:6,2

Mapper.xml

<select id="selectByCondition" resultMap="BaseResultMap"> SELECT * from biobase_role_popedom WHERE roleID in (#{roleid,jdbcType=VARCHAR}) </foreach> </select>

讯享网

运行结果


讯享网


讯享网
原因:网上找了很多方法,没有解决。最后各种测试发现不用字符串拼接就没有问题,因为当传递的参数只有一个值的时候就不会出问题

所以,我将传递的值放在List中,当然放在Map,数组都一样。

讯享网解决:

首先确保数据库连接字符串添加了  ?autoReconnect=true&useUnicode=true&characterEncoding=utf8 

Mapper.xml

<select id="selectByCondition" resultMap="BaseResultMap"> SELECT * from biobase_role_popedom WHERE roleID in <foreach collection="list" item="item" index="index" open="(" separator="," close=")"> #{item} </foreach> </select>

小讯
上一篇 2025-02-06 09:50
下一篇 2025-02-23 19:00

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/61414.html