参数索引超出范围MySQL PreparedStatement?

时间:2015-07-27 10:00:23

标签: mysql sql jdbc prepared-statement

我尝试做一个选择:

enter image description here

但我收到一个例外: enter image description here

2 个答案:

答案 0 :(得分:2)

尝试这样:

preparedStatement = connection.prepareStatement(sqlCompetition);
preparedStatement.setInt(...);

我认为你还有变量

中的旧陈述

答案 1 :(得分:1)

您正在PrepareStatement创建line number 212对象,但您没有分配prepareStatement变量,这意味着prepareStatement变量仍然保留旧对象。

line number 213您正在使用setInt()方法,它会调用旧对象。看来你的旧对象包含任何占位符,因为这个原因你得到Parameter index out of range exception

将新创建的PreparedStatement对象分配到prepareStatement line number 212变量以解决您的问题。