今天发现一个小细节,没注意就会报错,在xml中自定义sql语句时,里面不能有注释过得sql,简单的说就是:假如第一次写的sql是select * from table,但是在后面发现要写错了,那么只能把之前这一条删除掉,不能注释,如果注释就会报错,当然,这只是一个小错误而已,一般人可能不会犯 ...
一 错误原因分析 从错误提示可以看出:实际传入的参数大于sql中待设置的参数,也就是sql中的 少于参数或 根本没有产生原因: 号被单引号包围 如: 二 解决办法 去掉单引号 上面sql改为: ...
2019-07-07 23:06 0 1760 推荐指数:
今天发现一个小细节,没注意就会报错,在xml中自定义sql语句时,里面不能有注释过得sql,简单的说就是:假如第一次写的sql是select * from table,但是在后面发现要写错了,那么只能把之前这一条删除掉,不能注释,如果注释就会报错,当然,这只是一个小错误而已,一般人可能不会犯 ...
这个错误是说我需要4个参数,但是你却给了我5个 其实是sql语句的问题,我习惯于先将sql语句在sqlyog中运行一遍在放到代码中, sql语句复制过来的时候会默认帮你加上``,这也是导致出错的地方,如图 将``删掉即可。 ...
java.sql.SQLException: Parameter index out of range (3 > number of parameters, which is 2). java.sql.SQLException: Parameter index out of range ...
执行根据某条件查询数据,报错如下: 网上搜索了下,说是mysql预查询语句中的问号个数和传入的参数个数不符。再看自己的mybatis代码: 发现参数#{model}加上了引号,去掉引号就OK了。 ...
java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0). at com.mysql.jdbc.SQLError.createSQLException ...
${name} 是不带单引号的,而#{name} 是带单引号的 ...
Parameter index out of range (1 > number of parameters, which is 0).(参数索引超出范围) 在mybatis里面写就是应该是 like '%${name} %' 而不是 '%#{name} %' ${name ...
在mybatis里面写就是应该是 like '%${name} %' 而不是 '%#{name} %' ${name} 是不带单引号的,而#{name} 是带单引号的 所以,当你用到 like '%#{name}%' 会报这种错误 ...