mybatis:Could not set parameters for mapping: ParameterMapping

2023-05-30,,

报错:

展开查看

org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='name', mode=IN, javaType=class java.lang.String, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
### The error may exist in com/kuaicode/dao/WorkerMapper.java (best guess)
### The error may involve com.kuaicode.dao.WorkerMapper.selectWorkersByName-Inline
### The error occurred while setting parameters
### SQL: select * from tb_worker where name like concat('%', '?', '%')
### Cause: org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='name', mode=IN, javaType=class java.lang.String, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).

**SQL语句:**

select * from tb_worker where name like concat('%', '#{name}', '%');

解决办法:

去除参数的单引号。

总结:

比较蠢的错误且找了很长时间。

mybatis:Could not set parameters for mapping: ParameterMapping的相关教程结束。

《mybatis:Could not set parameters for mapping: ParameterMapping.doc》

下载本文的Word格式文档,以方便收藏与打印。