mybatis中Parameter index out of range (1 > number of parameters, which is 0).

Parameter index out of range (1 > number of parameters, which is 0).(参数索引超出范围)

在mybatis里面写就是应该是 like  '%${name} %' 而不是 '%#{name} %'  

${name} 是不带单引号的,而#{name} 是带单引号的

所以,当你用到 like '%#{name}%' 会报这种错误

----------------------------------更新 20181114-------------------------

但是${name} 是会存在SQL注入问题,首先感谢 @ TeddyXiong 同学的告知

对于这种情况,可以采用mysql 语法 CONCAT

例如: CONCAT('%',#{name},'%')

公众号

欢迎关注我的公众号“码上开发”,每天分享最新技术资讯、最优原创文章。关注获取最新资源

版权声明:本文为不会代码的小白原创文章,未经允许不得转载。

原文地址:https://www.cnblogs.com/xswz/p/7469532.html