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

SQLException:o método executeQuery não pode ser usado para atualização


Como você está inserindo um registro, você deve usar executeUpdate() não executeQuery() .

Aqui estão alguns métodos que geralmente são mal utilizados:

booleano execute()

ResultSet executeQuery()

int executeUpdate()

Mais uma coisa, sua consulta é fraca, pois é vulnerável com SQL Injection . Por favor, parametrize usando PreparedStatement .

Trecho de código de exemplo:
String insertNewUserSQL = "INSERT INTO " + studentsTable + " VALUES (?, ?, ?, ?, ?, ?, ?)";
PreparedStatement pstmt = con.prepareStatement(insertNewUserSQL);
pstmt.setString(1, userName);
// ... repeat this step until the last parameter ....
pstmt.setString(7, email);
pstmt.executeUpdate();