Я использую подготовленное заявление, и у меня есть ошибка java.sql.SQLException
query = "INSERT INTO instdb (" +
"id," +
"name," +
"username," +
"descr," +
"tel," +
"vk," +
"ownerId," +
"query," +
"postId," +
"parametr) VALUES" +
"(?,?,?,?,?,?,?,?,?,?)";
stmt = con.prepareStatement(query);
stmt.setInt(1, maxid);
stmt.setString(2,user.getFull_name());
stmt.setString(3,username);
stmt.setString(4,caption);
stmt.setString(5,longestTel);
stmt.setString(6,vk);
stmt.setString(7,ownerId);
stmt.setString(8,addons.get(j));
stmt.setString(9,postId);
stmt.setString(10,param);
И на stmt.setInt(1, maxid); ошибка
java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
РЕДАКТИРОВАТЬ 1
Я заменяю stmt = con.prepareStatement(query); и получаю новую ошибку:
java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?,?,?,?,?,?,?,?,?,?)'
P.S. Мне это не помогло переполнение стека




Похоже, вы не назначаете строку запроса подготовленному оператору. Должно быть что-то вроде:
PreparedStatement stmt = con.prepareStatement(query);
stmt.setInt(1, maxid);
и т.п. ... ...
Вы забыли инициализировать stm?
stm = con.prepareStatement(query);
где con — ваш Connection объект.