Olá, eu estou trabalhando num projeto e aparece o seguinte erro:
java.sql.SQLException: Parameter index out of range (0 < 1 ).
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
Eu já tentei mudar o index várias vezes mas o erro, persiste, por exemplo, se eu colocá-lo como 1 aparece a seguinte mensagem de erro:
java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
O meu código é o seguinte:
package cadastro.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import cadastro.model.Cadastro;
import cadastro.model.ConnectionFactory;
public class CadastroDAO {
public void save(Cadastro contato) {
String sql = "INSERT INTO CONTATOS('nome', 'email', 'senha','id_telefone') group VALUES ('?' , '?' , '?' ,'?')";
Connection conn = null;
PreparedStatement pstm = null;
try {
conn = ConnectionFactory.createConnectionToMySQL();
pstm = (PreparedStatement) conn.prepareStatement(sql);
pstm.setString(1, contato.getNome());
pstm.setString(1, contato.getEmail());
pstm.setString(1, contato.getSenha());
pstm.setInt(1, contato.getId_Telefone());
pstm.execute(sql);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (pstm != null) {
pstm.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Desde já agradeço pelo tempo.