2018年05月29日 17:44:29 stalin_ 阅读数:1731
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/stalin_/article/details/80499496
今天在操作Mysql进行删除操作时,出现了这么一个错误。
Parameter index out of range (1 > number of parameters, which is 0)
结合网上各位大佬给出的解答,终于将其解决。
问题出在手写的sql出错。
这个报错的含义指的是第一个参数的问题,也就是说问题出在?左右。
这是我写的sql:
String sql = “DELETE FROM T_PUB_NODE_INFO WHERE C_IP =?”;
看起来是不是没有错误。。。
原来是我的问号是中文输入法下的?,不是英文输入下的?。改了之后就好了。
另外网上也有其他错误情况。
例如这样写:
String sql = “DELETE FROM T_PUB_NODE_INFO WHERE C_IP =’?’”;
还有在MyBatis下报这个错误可能是你 like 语句写错了。
在mybatis里面写就是应该是 like ‘%${name} %’ 而不是 ‘%#{name} %’ 。
${name} 是不带单引号的,而#{name} 是带单引号的
本文详细解析了在使用Mysql进行删除操作时遇到的Parameterindexoutofrange错误,阐述了错误原因在于SQL语句中使用的问号为中文字符而非英文字符,并提供了正确的SQL语句写法,同时提及了MyBatis环境下类似问题的解决方案。
1481

被折叠的 条评论
为什么被折叠?



