您的位置:首页 > 数据库

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

2018-02-27 11:24 369 查看
问题:只是执行一个简单的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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐