Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Erro com PreparedStatement


Invocando executeQuery(sql) você realmente invoca um método em Statement - não em PreparedStatement . Então você joga fora o valor do parâmetro já atribuído e executa uma consulta onde o espaço reservado ? permanece sem análise - então você recebe esse erro.

Mudar
 ResultSet results = state.executeQuery(sql);

para
 ResultSet results = state.executeQuery();

e você deve estar bem.

(E de causa
resultname = state2.executeQuery(sql2);

precisa ser
resultname = state2.executeQuery();

também)